diff options
author | Andrew Mahone <andrew.mahone@gmail.com> | 2009-03-06 00:38:50 +0000 |
---|---|---|
committer | Andrew Mahone <andrew.mahone@gmail.com> | 2009-03-06 00:38:50 +0000 |
commit | cc5689c153fd24fa10bfce2019967a3e6c068c83 (patch) | |
tree | 608f93b12c2919a59c59854ab683e1917a1b30fa /apps/plugins | |
parent | 5aca36115f34e5151b9c570adb568b5b4080a042 (diff) | |
download | rockbox-cc5689c153fd24fa10bfce2019967a3e6c068c83.tar.gz rockbox-cc5689c153fd24fa10bfce2019967a3e6c068c83.zip |
pictureflow: use correct priority to free slides when extending cache on right, catch and handle failure to find a slide to free
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20212 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins')
-rw-r--r-- | apps/plugins/pictureflow.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/apps/plugins/pictureflow.c b/apps/plugins/pictureflow.c index cead25c959..58d2869ecc 100644 --- a/apps/plugins/pictureflow.c +++ b/apps/plugins/pictureflow.c | |||
@@ -1224,8 +1224,8 @@ bool load_new_slide(void) | |||
1224 | cache[cache_right_index].index >= number_of_slides) && | 1224 | cache[cache_right_index].index >= number_of_slides) && |
1225 | cache[cache_left_index].index > 0) | 1225 | cache[cache_left_index].index > 0) |
1226 | { | 1226 | { |
1227 | if (cache_free == -1) | 1227 | if (cache_free == -1 && !free_slide_prio(prio_l)) |
1228 | free_slide_prio(prio_l); | 1228 | return false; |
1229 | i = lla_pop_head(&cache_free); | 1229 | i = lla_pop_head(&cache_free); |
1230 | if (load_and_prepare_surface(cache[cache_left_index].index | 1230 | if (load_and_prepare_surface(cache[cache_left_index].index |
1231 | - 1, i, prio_l)) | 1231 | - 1, i, prio_l)) |
@@ -1236,8 +1236,8 @@ bool load_new_slide(void) | |||
1236 | } | 1236 | } |
1237 | } else if(cache[cache_right_index].index < number_of_slides - 1) | 1237 | } else if(cache[cache_right_index].index < number_of_slides - 1) |
1238 | { | 1238 | { |
1239 | if (cache_free == -1) | 1239 | if (cache_free == -1 && !free_slide_prio(prio_r)) |
1240 | free_slide_prio(prio_l); | 1240 | return false; |
1241 | i = lla_pop_head(&cache_free); | 1241 | i = lla_pop_head(&cache_free); |
1242 | if (load_and_prepare_surface(cache[cache_right_index].index | 1242 | if (load_and_prepare_surface(cache[cache_right_index].index |
1243 | + 1, i, prio_r)) | 1243 | + 1, i, prio_r)) |