diff --git a/lib/Epub/Epub.cpp b/lib/Epub/Epub.cpp index 74c91f3..d1855cc 100644 --- a/lib/Epub/Epub.cpp +++ b/lib/Epub/Epub.cpp @@ -321,7 +321,7 @@ size_t Epub::getBookSize() const { return getCumulativeSpineItemSize(getSpineIte // Calculate progress in book uint8_t Epub::calculateProgress(const int currentSpineIndex, const float currentSpineRead) { - size_t prevChapterSize = getCumulativeSpineItemSize(currentSpineIndex - 1); + size_t prevChapterSize = (currentSpineIndex >= 1) ? getCumulativeSpineItemSize(currentSpineIndex - 1) : 0; size_t curChapterSize = getCumulativeSpineItemSize(currentSpineIndex) - prevChapterSize; size_t bookSize = getBookSize(); size_t sectionProgSize = currentSpineRead * curChapterSize;