From ecec94043d603f13374b364e634a7b3a82190ca2 Mon Sep 17 00:00:00 2001 From: Nicolas Pennequin Date: Sun, 16 Dec 2007 01:38:56 +0000 Subject: 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 --- apps/buffering.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'apps/buffering.c') diff --git a/apps/buffering.c b/apps/buffering.c index 1567a6ea91..531413bcb4 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) -- cgit v1.2.3