diff --git a/HISTORY b/HISTORY index 1195544..23d64c2 100644 --- a/HISTORY +++ b/HISTORY @@ -1,6 +1,7 @@ VDR Plugin 'streamdev' Revision History --------------------------------------- +- Fixed recordings menu inode numbers: ino_t is a long long on some systems - Updated Slovak translation (thanks to Milan Hrala) - Adapted Makefiles to VDR 1.7.36+ (thanks to macmenot). Old makefiles have been renamed to Makefile-1.7.33. diff --git a/server/connectionHTTP.c b/server/connectionHTTP.c index ec10824..c3b3f90 100644 --- a/server/connectionHTTP.c +++ b/server/connectionHTTP.c @@ -459,12 +459,12 @@ cRecording* cConnectionHTTP::RecordingFromString(const char *FileBase, const cha if (p != FileBase && l > 0L) { if (*p == ':') { // get recording by dev:inode - unsigned long inode = strtoul(p + 1, &p, 0); + ino_t inode = (ino_t) strtoull(p + 1, &p, 0); if (*p == 0 && inode > 0) { struct stat st; cThreadLock RecordingsLock(&Recordings); for (cRecording *rec = Recordings.First(); rec; rec = Recordings.Next(rec)) { - if (stat(rec->FileName(), &st) == 0 && st.st_dev == (dev_t) l && st.st_ino == (ino_t) inode) + if (stat(rec->FileName(), &st) == 0 && st.st_dev == (dev_t) l && st.st_ino == inode) return new cRecording(rec->FileName()); } } diff --git a/server/menuHTTP.c b/server/menuHTTP.c index de46f00..a66573e 100644 --- a/server/menuHTTP.c +++ b/server/menuHTTP.c @@ -28,7 +28,7 @@ const cString cRecordingsIterator::ItemRessource() const { struct stat st; if (stat(current->FileName(), &st) == 0) - return cString::sprintf("%lu:%lu.rec", st.st_dev, st.st_ino); + return cString::sprintf("%lu:%llu.rec", (unsigned long) st.st_dev, (unsigned long long) st.st_ino); return ""; }