summaryrefslogtreecommitdiff
path: root/rbutil/sansapatcher/sansaio-win32.c
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2012-12-23 23:36:00 +0100
committerDominik Riebeling <Dominik.Riebeling@gmail.com>2013-01-01 15:06:34 +0100
commit9c1ed84d28edfa4a2b5b0a327dccd83d1a1beef8 (patch)
tree1c884e4db52c2d365095c281e63956f909691226 /rbutil/sansapatcher/sansaio-win32.c
parent24e37ddf57bac6a1c9786d50abbe3a1982930382 (diff)
downloadrockbox-9c1ed84d28edfa4a2b5b0a327dccd83d1a1beef8.tar.gz
rockbox-9c1ed84d28edfa4a2b5b0a327dccd83d1a1beef8.zip
sansapatcher: move sectorbuf pointer into sansa_t structure.
Similar as the ipod_t structure for ipodpatcher the sansa_t structure holds all relevant information for sansapatcher. Put the global sansa_sectorbuf pointer into it as well. Change-Id: Iad08ef6aafc49609c3d0d556914246f230ee0179
Diffstat (limited to 'rbutil/sansapatcher/sansaio-win32.c')
-rw-r--r--rbutil/sansapatcher/sansaio-win32.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/rbutil/sansapatcher/sansaio-win32.c b/rbutil/sansapatcher/sansaio-win32.c
index 196ee1c636..256712fe20 100644
--- a/rbutil/sansapatcher/sansaio-win32.c
+++ b/rbutil/sansapatcher/sansaio-win32.c
@@ -150,12 +150,12 @@ int sansa_close(struct sansa_t* sansa)
150 return 0; 150 return 0;
151} 151}
152 152
153int sansa_alloc_buffer(unsigned char** sectorbuf, int bufsize) 153int sansa_alloc_buffer(struct sansa_t* sansa, int bufsize)
154{ 154{
155 /* The ReadFile function requires a memory buffer aligned to a multiple of 155 /* The ReadFile function requires a memory buffer aligned to a multiple of
156 the disk sector size. */ 156 the disk sector size. */
157 *sectorbuf = (unsigned char*)VirtualAlloc(NULL, bufsize, MEM_COMMIT, PAGE_READWRITE); 157 sansa->sectorbuf = (unsigned char*)VirtualAlloc(NULL, bufsize, MEM_COMMIT, PAGE_READWRITE);
158 if (*sectorbuf == NULL) { 158 if (sansa->sectorbuf == NULL) {
159 sansa_print_error(" Error allocating a buffer: "); 159 sansa_print_error(" Error allocating a buffer: ");
160 return -1; 160 return -1;
161 } 161 }
@@ -189,11 +189,11 @@ int sansa_read(struct sansa_t* sansa, unsigned char* buf, int nbytes)
189 return count; 189 return count;
190} 190}
191 191
192int sansa_write(struct sansa_t* sansa, unsigned char* buf, int nbytes) 192int sansa_write(struct sansa_t* sansa, int nbytes)
193{ 193{
194 unsigned long count; 194 unsigned long count;
195 195
196 if (!WriteFile(sansa->dh, buf, nbytes, &count, NULL)) { 196 if (!WriteFile(sansa->dh, sansa->sectorbuf, nbytes, &count, NULL)) {
197 sansa_print_error(" Error writing to disk: "); 197 sansa_print_error(" Error writing to disk: ");
198 return -1; 198 return -1;
199 } 199 }