diff options
| author | Nicolas Pennequin <nicolas.pennequin@free.fr> | 2007-12-16 01:38:56 +0000 |
|---|---|---|
| committer | Nicolas Pennequin <nicolas.pennequin@free.fr> | 2007-12-16 01:38:56 +0000 |
| commit | ecec94043d603f13374b364e634a7b3a82190ca2 (patch) | |
| tree | 7c958a342b321e14faad6ee256a7ca24f6921e42 /apps/buffering.c | |
| parent | a2aec46f04699ca00e3c18d5156b37e581d05c3f (diff) | |
| download | rockbox-ecec94043d603f13374b364e634a7b3a82190ca2.zip rockbox-ecec94043d603f13374b364e634a7b3a82190ca2.tar.gz rockbox-ecec94043d603f13374b364e634a7b3a82190ca2.tar.bz2 rockbox-ecec94043d603f13374b364e634a7b3a82190ca2.tar.xz | |
Check that the pointer isn't NULL before dereferencing it, just to be safe and to allow using bufgetdata to know how much data is available. Also remove a few trailing spaces.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15940 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/buffering.c')
| -rw-r--r-- | apps/buffering.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/apps/buffering.c b/apps/buffering.c index 1567a6e..531413b 100644 --- a/apps/buffering.c +++ b/apps/buffering.c @@ -1135,7 +1135,9 @@ ssize_t bufgetdata(int handle_id, size_t size, void **data) memcpy(guard_buffer, (unsigned char *)buffer, copy_n); } - *data = &buffer[h->ridx]; + if (data) + *data = &buffer[h->ridx]; + return size; } @@ -1144,7 +1146,7 @@ ssize_t bufgettail(int handle_id, size_t size, void **data) size_t tidx; const struct memory_handle *h; - + h = find_handle(handle_id); if (!h) @@ -1172,7 +1174,7 @@ ssize_t bufgettail(int handle_id, size_t size, void **data) ssize_t bufcuttail(int handle_id, size_t size) { struct memory_handle *h; - + h = find_handle(handle_id); if (!h) |