git.cweiske.de
/
enigma2.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
dd43e7a
)
migrate eDVBServiceOfflineOperations to new iDataSource::read function
author
ghost
<andreas.monzner@multimedia-labs.de>
Wed, 10 Nov 2010 16:17:45 +0000
(17:17 +0100)
committer
ghost
<andreas.monzner@multimedia-labs.de>
Wed, 10 Nov 2010 16:17:45 +0000
(17:17 +0100)
lib/service/servicedvb.cpp
patch
|
blob
|
history
diff --git
a/lib/service/servicedvb.cpp
b/lib/service/servicedvb.cpp
index e498dd420933f8780feb42b1189300933eb8b5d3..9cac25fa0207a1632d9c380a4548917faf7c8a5e 100644
(file)
--- a/
lib/service/servicedvb.cpp
+++ b/
lib/service/servicedvb.cpp
@@
-503,18
+503,19
@@
RESULT eDVBPVRServiceOfflineOperations::reindex()
int err = f.open(m_ref.path.c_str(), 0);
if (err < 0)
return -1;
int err = f.open(m_ref.path.c_str(), 0);
if (err < 0)
return -1;
-
+
+ off_t offset = 0;
off_t length = f.length();
unsigned char buffer[188*256*4];
while (1)
{
off_t length = f.length();
unsigned char buffer[188*256*4];
while (1)
{
- off_t offset = f.lseek(0, SEEK_CUR);
eDebug("at %08llx / %08llx (%d %%)", offset, length, (int)(offset * 100 / length));
eDebug("at %08llx / %08llx (%d %%)", offset, length, (int)(offset * 100 / length));
- int r = f.read(buffer, sizeof(buffer));
+ int r = f.read(
offset,
buffer, sizeof(buffer));
if (!r)
break;
if (r < 0)
return r;
if (!r)
break;
if (r < 0)
return r;
+ offset += r;
parser.parseData(offset, buffer, r);
}
parser.parseData(offset, buffer, r);
}