diff options
author | Rafaël Carré <rafael.carre@gmail.com> | 2010-06-20 21:53:47 +0000 |
---|---|---|
committer | Rafaël Carré <rafael.carre@gmail.com> | 2010-06-20 21:53:47 +0000 |
commit | 298316d19297eea82869b63235b535e5904fc0dd (patch) | |
tree | 0426e9c8cecac7532a88888e78e5e54ea9bb6145 /apps/plugins/text_viewer/tv_text_reader.c | |
parent | 17a2f9d8d2dfddd8d2d81ff638e21302efef1c8e (diff) | |
download | rockbox-298316d19297eea82869b63235b535e5904fc0dd.tar.gz rockbox-298316d19297eea82869b63235b535e5904fc0dd.zip |
text_viewer: cleanup & bugfix
cleanup:
- don't use enum in struct / return values
- don't use a getter for preferences but a global pointer
- explicitely make enums start at 0
- use static tables for header/footer settings
- remove unneeded memset before strlcpy
- use static buffer allocation, not dynamic
- check header/footer preferences before using the callbacks
- don't include font filename in archos player preferences (break
file format)
bugfix:
- statically allocate old preferences in tv_set_preferences()
Sometimes I can read a file on Clipv2, but it still aborts quite often
refs: FS#11399
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26998 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/text_viewer/tv_text_reader.c')
-rw-r--r-- | apps/plugins/text_viewer/tv_text_reader.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/apps/plugins/text_viewer/tv_text_reader.c b/apps/plugins/text_viewer/tv_text_reader.c index 28cfa565c3..53c8f6738f 100644 --- a/apps/plugins/text_viewer/tv_text_reader.c +++ b/apps/plugins/text_viewer/tv_text_reader.c | |||
@@ -29,19 +29,11 @@ | |||
29 | static int get_block; | 29 | static int get_block; |
30 | static bool get_double_blocks; | 30 | static bool get_double_blocks; |
31 | 31 | ||
32 | bool tv_init_text_reader(unsigned char *buf, size_t bufsize, size_t *used_size) | 32 | bool tv_init_text_reader(void) |
33 | { | 33 | { |
34 | size_t size; | 34 | tv_init_text_processor(); |
35 | 35 | ||
36 | if (!tv_init_text_processor(buf, bufsize, used_size)) | 36 | return tv_init_pager(); |
37 | return false; | ||
38 | |||
39 | size = *used_size; | ||
40 | if (!tv_init_pager(buf + size, bufsize - size, used_size)) | ||
41 | return false; | ||
42 | |||
43 | *used_size += size; | ||
44 | return true; | ||
45 | } | 37 | } |
46 | 38 | ||
47 | void tv_finalize_text_reader(void) | 39 | void tv_finalize_text_reader(void) |