<feed xmlns='http://www.w3.org/2005/Atom'>
<title>viewer.git/indra/llimage/llimagej2c.h, branch 26.3</title>
<subtitle>Megapahit's fork of the Second Life viewer.
</subtitle>
<id>https://megapahit.org/viewer.git/atom?h=26.3</id>
<link rel='self' href='https://megapahit.org/viewer.git/atom?h=26.3'/>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/'/>
<updated>2026-07-22T04:40:35Z</updated>
<entry>
<title>Revert "Merge pull request #5829 from secondlife/geenz/texture-quality"</title>
<updated>2026-07-22T04:40:35Z</updated>
<author>
<name>Jonathan "Geenz" Goodman</name>
<email>geenz@geenzo.com</email>
</author>
<published>2026-07-22T04:40:35Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=55e94847b4270d7f71016fe651800ef9e43b4bc5'/>
<id>urn:sha1:55e94847b4270d7f71016fe651800ef9e43b4bc5</id>
<content type='text'>
This reverts commit 6b4e3f3288ec1e9917cecd862a7a52945e5b4db2, reversing
changes made to 99ab6316b4ae9058f22d9f57d21e795ca45797fd.
</content>
</entry>
<entry>
<title>Move the KDU data size estimate into j2ckdu, make the base pure virtual.</title>
<updated>2026-05-20T14:20:54Z</updated>
<author>
<name>Jonathan "Geenz" Goodman</name>
<email>geenz@geenzo.com</email>
</author>
<published>2026-05-20T14:20:54Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=57048769db20f5e84834c8c6dd15466083bd7585'/>
<id>urn:sha1:57048769db20f5e84834c8c6dd15466083bd7585</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Bring back the pre-aug 2024 byte estimation for j2c streams, and add a configurable high water mark for VRAM.</title>
<updated>2026-05-20T03:11:16Z</updated>
<author>
<name>Jonathan "Geenz" Goodman</name>
<email>geenz@geenzo.com</email>
</author>
<published>2026-05-20T03:11:16Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=1ee317bcb7a5988658612a69a7bd52fb1a9e37c7'/>
<id>urn:sha1:1ee317bcb7a5988658612a69a7bd52fb1a9e37c7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Clean up boost includes and remove compiler warning pragma for unreachable code in PCH (#2361)</title>
<updated>2024-08-20T15:41:48Z</updated>
<author>
<name>Ansariel Hiller</name>
<email>Ansariel@users.noreply.github.com</email>
</author>
<published>2024-08-20T15:41:48Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=9f7dd0177201fe080c287144b99a70125be1fb2b'/>
<id>urn:sha1:9f7dd0177201fe080c287144b99a70125be1fb2b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>#824 Process source files in bulk: replace tabs with spaces, convert CRLF to LF, and trim trailing whitespaces as needed</title>
<updated>2024-04-29T04:56:09Z</updated>
<author>
<name>Andrey Lihatskiy</name>
<email>alihatskiy@productengine.com</email>
</author>
<published>2024-04-29T04:43:28Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=1b68f71348ecf3983b76b40d7940da8377f049b7'/>
<id>urn:sha1:1b68f71348ecf3983b76b40d7940da8377f049b7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>replace boost library to standard</title>
<updated>2024-01-08T21:29:21Z</updated>
<author>
<name>AiraYumi</name>
<email>aira.youme@airanyumi.net</email>
</author>
<published>2024-01-06T14:29:06Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=7c8907522fe6600918dacc15ee138ca72b2cf35e'/>
<id>urn:sha1:7c8907522fe6600918dacc15ee138ca72b2cf35e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Buildfix: brought back LINDEN_J2C_COMMENT_PREFIX</title>
<updated>2016-08-04T21:58:09Z</updated>
<author>
<name>AndreyL ProductEngine</name>
<email>alihatskiy@productengine.com</email>
</author>
<published>2016-08-04T21:58:09Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=f459c67faea4bfcbca8e88c6d8b66319b4b461aa'/>
<id>urn:sha1:f459c67faea4bfcbca8e88c6d8b66319b4b461aa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>MAINT-6584: Convert LLImage class hierarchy to standard 'bool'</title>
<updated>2016-07-22T15:35:23Z</updated>
<author>
<name>Nat Goodspeed</name>
<email>nat@lindenlab.com</email>
</author>
<published>2016-07-22T15:35:23Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=acdb050ce5e672a6e5c83ef6e95257ce68934d1b'/>
<id>urn:sha1:acdb050ce5e672a6e5c83ef6e95257ce68934d1b</id>
<content type='text'>
instead of legacy BOOL.
</content>
</entry>
<entry>
<title>MAINT-6584: Streamline static LLImageJ2C implementation API.</title>
<updated>2016-07-21T20:49:02Z</updated>
<author>
<name>Nat Goodspeed</name>
<email>nat@lindenlab.com</email>
</author>
<published>2016-07-21T20:49:02Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=71b593e88b1e601db84cd3c399865a0bfd8164cf'/>
<id>urn:sha1:71b593e88b1e601db84cd3c399865a0bfd8164cf</id>
<content type='text'>
Specifically, remove unused function pointer types CreateLLImageJ2CFunction,
DestroyLLImageJ2CFunction and EngineInfoLLImageJ2CFunction.

Also eliminate static fallbackDestroyLLImageJ2CImpl() and
fallbackEngineInfoLLImageJ2CImpl(), leaving only static
fallbackCreateLLImageJ2CImpl().

We do need a factory function to instantiate the appropriate LLImageJ2CImpl
subclass, so leave the fallbackCreateLLImageJ2CImpl() link seam in place.

However, given that every known LLImageJ2CImpl subclass is cheap to
instantiate, make getEngineInfo() a pure virtual method on that subclass: the
static LLImageJ2C::getEngineInfo() method can temporarily construct an
instance to query. While we're at it, make getEngineInfo() return std::string
like LLImageJ2C::getEngineInfo(). It's ridiculous that
fallbackEngineInfoLLImageJ2CImpl() implementations constructed a static
std::string and returned its c_str(), only to have LLImageJ2C::getEngineInfo()
construct ANOTHER std::string from the returned const char*.

fallbackDestroyLLImageJ2CImpl() never did anything useful: it merely deleted
the passed LLImageJ2CImpl subclass pointer as the specific subclass type. But
since LLImageJ2CImpl's destructor is virtual, LLImageJ2C's destructor could
simply delete the stored LLImageJ2CImpl*. In fact, make mImpl a
boost::scoped_ptr&lt;LLImageJ2CImpl&gt; so we don't even have to delete it manually.
</content>
</entry>
<entry>
<title>remove execute permission from many files that should not have it</title>
<updated>2015-11-10T14:48:56Z</updated>
<author>
<name>Oz Linden</name>
<email>oz@lindenlab.com</email>
</author>
<published>2015-11-10T14:48:56Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=c8726aba303bcf1207b730a344536e25491420bc'/>
<id>urn:sha1:c8726aba303bcf1207b730a344536e25491420bc</id>
<content type='text'>
</content>
</entry>
</feed>
