diff options
author | Thomas Martitz <kugel@rockbox.org> | 2011-08-22 10:23:11 +0000 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2011-08-22 10:23:11 +0000 |
commit | fbde6baab59d7c8d047ef267884373d6d9f9e59d (patch) | |
tree | dcc35ded25cd22218c61b545b5a44d5f91ca6c08 /apps | |
parent | b66d07a9e3a27af3a6b4d2cba8e7909b9beab46d (diff) | |
download | rockbox-fbde6baab59d7c8d047ef267884373d6d9f9e59d.tar.gz rockbox-fbde6baab59d7c8d047ef267884373d6d9f9e59d.zip |
Move stuff a bit down to fix red on TALK_PARTIAL_LOAD.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30339 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r-- | apps/talk.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/apps/talk.c b/apps/talk.c index 2f15ebce49..0c3b769d82 100644 --- a/apps/talk.c +++ b/apps/talk.c | |||
@@ -354,14 +354,6 @@ static void load_voicefile(bool probe, char* buf, size_t bufsize) | |||
354 | logf("Incompatible voice file"); | 354 | logf("Incompatible voice file"); |
355 | goto load_err; | 355 | goto load_err; |
356 | } | 356 | } |
357 | p_thumbnail = voicebuf.buf + file_size; | ||
358 | p_thumbnail += (long)p_thumbnail % 2; /* 16-bit align */ | ||
359 | size_for_thumbnail = voicebuf.buf + bufsize - p_thumbnail; | ||
360 | #if CONFIG_CODEC == SWCODEC | ||
361 | size_for_thumbnail = MIN(size_for_thumbnail, MAX_THUMBNAIL_BUFSIZE); | ||
362 | #endif | ||
363 | if (size_for_thumbnail <= 0) | ||
364 | p_thumbnail = NULL; | ||
365 | } | 357 | } |
366 | else | 358 | else |
367 | goto load_err; | 359 | goto load_err; |
@@ -403,11 +395,26 @@ static void load_voicefile(bool probe, char* buf, size_t bufsize) | |||
403 | 395 | ||
404 | #ifdef TALK_PARTIAL_LOAD | 396 | #ifdef TALK_PARTIAL_LOAD |
405 | alloc_size += silence_len + QUEUE_SIZE; | 397 | alloc_size += silence_len + QUEUE_SIZE; |
398 | #else | ||
399 | /* allocate for the entire file, TALK_PROGRESSIVE_LOAD doesn't | ||
400 | * load everything just yet */ | ||
401 | alloc_size = file_size; | ||
406 | #endif | 402 | #endif |
403 | |||
407 | if (alloc_size > bufsize) | 404 | if (alloc_size > bufsize) |
408 | goto load_err; | 405 | goto load_err; |
409 | return; | 406 | return; |
410 | 407 | ||
408 | /* now move p_thumbnail behind the voice clip buffer */ | ||
409 | p_thumbnail = voicebuf.buf + alloc_size; | ||
410 | p_thumbnail += (long)p_thumbnail % 2; /* 16-bit align */ | ||
411 | size_for_thumbnail = voicebuf.buf + bufsize - p_thumbnail; | ||
412 | #if CONFIG_CODEC == SWCODEC | ||
413 | size_for_thumbnail = MIN(size_for_thumbnail, MAX_THUMBNAIL_BUFSIZE); | ||
414 | #endif | ||
415 | if (size_for_thumbnail <= 0) | ||
416 | p_thumbnail = NULL; | ||
417 | |||
411 | load_err: | 418 | load_err: |
412 | p_voicefile = NULL; | 419 | p_voicefile = NULL; |
413 | has_voicefile = false; /* don't try again */ | 420 | has_voicefile = false; /* don't try again */ |