Change index type
This commit is contained in:
@@ -63,7 +63,7 @@ bool CrossPointState::loadFromBinaryFile() {
|
|||||||
if (version >= 2) {
|
if (version >= 2) {
|
||||||
serialization::readPod(inputFile, lastSleepImage);
|
serialization::readPod(inputFile, lastSleepImage);
|
||||||
} else {
|
} else {
|
||||||
lastSleepImage = UINT8_MAX;
|
lastSleepImage = SIZE_MAX;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (version >= 3) {
|
if (version >= 3) {
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ class CrossPointState {
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
std::string openEpubPath;
|
std::string openEpubPath;
|
||||||
uint8_t lastSleepImage = UINT8_MAX; // UINT8_MAX = unset sentinel
|
size_t lastSleepImage = SIZE_MAX; // SIZE_MAX = unset sentinel
|
||||||
uint8_t readerActivityLoadCount = 0;
|
uint8_t readerActivityLoadCount = 0;
|
||||||
bool lastSleepFromReader = false;
|
bool lastSleepFromReader = false;
|
||||||
~CrossPointState() = default;
|
~CrossPointState() = default;
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ bool JsonSettingsIO::loadState(CrossPointState& s, const char* json) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
s.openEpubPath = doc["openEpubPath"] | std::string("");
|
s.openEpubPath = doc["openEpubPath"] | std::string("");
|
||||||
s.lastSleepImage = doc["lastSleepImage"] | (uint8_t)UINT8_MAX;
|
s.lastSleepImage = doc["lastSleepImage"] | SIZE_MAX;
|
||||||
s.readerActivityLoadCount = doc["readerActivityLoadCount"] | (uint8_t)0;
|
s.readerActivityLoadCount = doc["readerActivityLoadCount"] | (uint8_t)0;
|
||||||
s.lastSleepFromReader = doc["lastSleepFromReader"] | false;
|
s.lastSleepFromReader = doc["lastSleepFromReader"] | false;
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -212,12 +212,12 @@ std::vector<std::string> collectSleepImages(bool allowPng) {
|
|||||||
// SEQUENTIAL: advances from APP_STATE.lastSleepImage, wrapping at numFiles.
|
// SEQUENTIAL: advances from APP_STATE.lastSleepImage, wrapping at numFiles.
|
||||||
size_t pickSleepImageIndex(size_t numFiles) {
|
size_t pickSleepImageIndex(size_t numFiles) {
|
||||||
if (SETTINGS.sleepImagePickMode == CrossPointSettings::SLEEP_IMAGE_PICK_MODE::PICK_SEQUENTIAL) {
|
if (SETTINGS.sleepImagePickMode == CrossPointSettings::SLEEP_IMAGE_PICK_MODE::PICK_SEQUENTIAL) {
|
||||||
const uint8_t last = APP_STATE.lastSleepImage;
|
const size_t last = APP_STATE.lastSleepImage;
|
||||||
if (last == UINT8_MAX || last >= numFiles) return 0;
|
if (last == SIZE_MAX || last >= numFiles) return 0;
|
||||||
return (static_cast<size_t>(last) + 1) % numFiles;
|
return (last + 1) % numFiles;
|
||||||
}
|
}
|
||||||
size_t idx = random(numFiles);
|
size_t idx = random(numFiles);
|
||||||
while (numFiles > 1 && APP_STATE.lastSleepImage != UINT8_MAX && idx == APP_STATE.lastSleepImage) {
|
while (numFiles > 1 && APP_STATE.lastSleepImage != SIZE_MAX && idx == APP_STATE.lastSleepImage) {
|
||||||
idx = random(numFiles);
|
idx = random(numFiles);
|
||||||
}
|
}
|
||||||
return idx;
|
return idx;
|
||||||
|
|||||||
Reference in New Issue
Block a user