summaryrefslogtreecommitdiff
path: root/apps/codecs
diff options
context:
space:
mode:
authorYoshihisa Uchida <uchida@rockbox.org>2010-03-06 08:13:56 +0000
committerYoshihisa Uchida <uchida@rockbox.org>2010-03-06 08:13:56 +0000
commit8050d47a4e2c3a62160d617af1c1ca38382f1319 (patch)
tree77884b13e5bcccb7fad0d55120b49e1b2ae35d3d /apps/codecs
parentff733b5f896b76b0678b7cdc178ee805f377b7b4 (diff)
downloadrockbox-8050d47a4e2c3a62160d617af1c1ca38382f1319.zip
rockbox-8050d47a4e2c3a62160d617af1c1ca38382f1319.tar.gz
rockbox-8050d47a4e2c3a62160d617af1c1ca38382f1319.tar.bz2
rockbox-8050d47a4e2c3a62160d617af1c1ca38382f1319.tar.xz
When seek action failed, play time is invalid.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25041 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs')
-rw-r--r--apps/codecs/aiff.c6
-rw-r--r--apps/codecs/au.c4
-rw-r--r--apps/codecs/smaf.c4
-rw-r--r--apps/codecs/vox.c4
-rw-r--r--apps/codecs/wav.c4
-rw-r--r--apps/codecs/wav64.c4
6 files changed, 14 insertions, 12 deletions
diff --git a/apps/codecs/aiff.c b/apps/codecs/aiff.c
index e4d1059..3ad6ecf 100644
--- a/apps/codecs/aiff.c
+++ b/apps/codecs/aiff.c
@@ -293,11 +293,13 @@ next_track:
/* 2nd args(read_buffer) is unnecessary in the format which AIFF supports. */
struct pcm_pos *newpos = codec->get_seek_pos(ci->seek_time, NULL);
- decodedsamples = newpos->samples;
if (newpos->pos > format.numbytes)
break;
if (ci->seek_buffer(firstblockposn + newpos->pos))
- bytesdone = newpos->pos;
+ {
+ bytesdone = newpos->pos;
+ decodedsamples = newpos->samples;
+ }
ci->seek_complete();
}
aifbuf = (uint8_t *)ci->request_buffer(&n, format.chunksize);
diff --git a/apps/codecs/au.c b/apps/codecs/au.c
index 0f4da3d..cf2a799 100644
--- a/apps/codecs/au.c
+++ b/apps/codecs/au.c
@@ -274,12 +274,12 @@ next_track:
/* 2nd args(read_buffer) is unnecessary in the format which Sun Audio supports. */
struct pcm_pos *newpos = codec->get_seek_pos(ci->seek_time, NULL);
- decodedsamples = newpos->samples;
if (newpos->pos > format.numbytes)
break;
if (ci->seek_buffer(firstblockposn + newpos->pos))
{
- bytesdone = newpos->pos;
+ bytesdone = newpos->pos;
+ decodedsamples = newpos->samples;
}
ci->seek_complete();
}
diff --git a/apps/codecs/smaf.c b/apps/codecs/smaf.c
index 019552e..fccb6cb 100644
--- a/apps/codecs/smaf.c
+++ b/apps/codecs/smaf.c
@@ -387,12 +387,12 @@ next_track:
if (ci->seek_time) {
struct pcm_pos *newpos = codec->get_seek_pos(ci->seek_time, &read_buffer);
- decodedsamples = newpos->samples;
if (newpos->pos > format.numbytes)
break;
if (ci->seek_buffer(firstblockposn + newpos->pos))
{
- bytesdone = newpos->pos;
+ bytesdone = newpos->pos;
+ decodedsamples = newpos->samples;
}
ci->seek_complete();
}
diff --git a/apps/codecs/vox.c b/apps/codecs/vox.c
index 290fae0..f306d8e 100644
--- a/apps/codecs/vox.c
+++ b/apps/codecs/vox.c
@@ -136,12 +136,12 @@ next_track:
if (ci->seek_time) {
struct pcm_pos *newpos = codec->get_seek_pos(ci->seek_time, &read_buffer);
- decodedsamples = newpos->samples;
if (newpos->pos > format.numbytes)
break;
if (ci->seek_buffer(firstblockposn + newpos->pos))
{
- bytesdone = newpos->pos;
+ bytesdone = newpos->pos;
+ decodedsamples = newpos->samples;
}
ci->seek_complete();
}
diff --git a/apps/codecs/wav.c b/apps/codecs/wav.c
index 412d548..8576ddd 100644
--- a/apps/codecs/wav.c
+++ b/apps/codecs/wav.c
@@ -395,12 +395,12 @@ next_track:
if (ci->seek_time) {
struct pcm_pos *newpos = codec->get_seek_pos(ci->seek_time, &read_buffer);
- decodedsamples = newpos->samples;
if (newpos->pos > format.numbytes)
break;
if (ci->seek_buffer(firstblockposn + newpos->pos))
{
- bytesdone = newpos->pos;
+ bytesdone = newpos->pos;
+ decodedsamples = newpos->samples;
}
ci->seek_complete();
}
diff --git a/apps/codecs/wav64.c b/apps/codecs/wav64.c
index bd2311c..a9e5ca1 100644
--- a/apps/codecs/wav64.c
+++ b/apps/codecs/wav64.c
@@ -402,12 +402,12 @@ next_track:
if (ci->seek_time) {
struct pcm_pos *newpos = codec->get_seek_pos(ci->seek_time, &read_buffer);
- decodedsamples = newpos->samples;
if (newpos->pos > format.numbytes)
break;
if (ci->seek_buffer(firstblockposn + newpos->pos))
{
- bytesdone = newpos->pos;
+ bytesdone = newpos->pos;
+ decodedsamples = newpos->samples;
}
ci->seek_complete();
}