Xteink-X4-crosspoint-reader/lib
Daniel 5f34388143 fix: prevent OOM crash when loading large EPUBs (2000+ chapters)
Remove the call to loadAllFileStatSlims() which pre-loads all ZIP central
directory entries into memory. For EPUBs with 2000+ chapters (like webnovels),
this exhausts the ESP32-C3's ~380KB RAM and causes abort().

The existing loadFileStatSlim() function already handles individual lookups
by scanning the central directory per-file when the cache is empty. This is
O(n*m) instead of O(n), but prevents memory exhaustion.

Fixes #134
2026-01-20 12:34:51 -08:00
..
EpdFont fix: render U+FFFD replacement character instead of ? (#366) 2026-01-19 22:58:43 +11:00
Epub fix: prevent OOM crash when loading large EPUBs (2000+ chapters) 2026-01-20 12:34:51 -08:00
expat Add expat and swap out EPUB HTML parser (#2) 2025-12-06 20:57:24 +11:00
FsHelpers Add exFAT support (#150) 2025-12-30 16:09:30 +11:00
GfxRenderer fix: render U+FFFD replacement character instead of ? (#366) 2026-01-19 22:58:43 +11:00
JpegToBmpConverter Add cover image display in *Continue Reading* card with framebuffer caching (#200) 2026-01-14 21:24:02 +11:00
KOReaderSync Adds KOReader Sync support (#232) 2026-01-19 11:55:35 +00:00
miniz Stream inflated EPUB HTMLs down to disk instead of inflating in memory (#4) 2025-12-08 00:39:17 +11:00
OpdsParser Calibre Web Epub Downloading + Calibre Wireless Device Syncing (#219) 2026-01-07 19:58:37 +11:00
picojpeg Add JPG image support (#23) 2025-12-21 17:15:17 +11:00
Serialization Add exFAT support (#150) 2025-12-30 16:09:30 +11:00
Txt Add TXT file reader support (#240) 2026-01-14 21:36:40 +11:00
Utf8 fix: render U+FFFD replacement character instead of ? (#366) 2026-01-19 22:58:43 +11:00
Xtc fix: XTC 1-bit thumb BMP polarity inversion (#373) 2026-01-19 22:41:48 +11:00
ZipFile Add exFAT support (#150) 2025-12-30 16:09:30 +11:00
README Public release 2025-12-03 22:06:45 +11:00

This directory is intended for project specific (private) libraries.
PlatformIO will compile them to static libraries and link into the executable file.

The source code of each library should be placed in a separate directory
("lib/your_library_name/[Code]").

For example, see the structure of the following example libraries `Foo` and `Bar`:

|--lib
|  |
|  |--Bar
|  |  |--docs
|  |  |--examples
|  |  |--src
|  |     |- Bar.c
|  |     |- Bar.h
|  |  |- library.json (optional. for custom build options, etc) https://docs.platformio.org/page/librarymanager/config.html
|  |
|  |--Foo
|  |  |- Foo.c
|  |  |- Foo.h
|  |
|  |- README --> THIS FILE
|
|- platformio.ini
|--src
   |- main.c

Example contents of `src/main.c` using Foo and Bar:
```
#include <Foo.h>
#include <Bar.h>

int main (void)
{
  ...
}

```

The PlatformIO Library Dependency Finder will find automatically dependent
libraries by scanning project source files.

More information about PlatformIO Library Dependency Finder
- https://docs.platformio.org/page/librarymanager/ldf.html