Lines 26-65
Link Here
|
26 |
- case 1: *((unsigned char*)buffer)++ = fill_value; return; |
26 |
- case 1: *((unsigned char*)buffer)++ = fill_value; return; |
27 |
- case 2: *((unsigned short*)buffer)++ = fill_value; return; |
27 |
- case 2: *((unsigned short*)buffer)++ = fill_value; return; |
28 |
- case 3: { unsigned char *p=buffer; p[2]=p[1]=p[0] = fill_value;} return; |
28 |
- case 3: { unsigned char *p=buffer; p[2]=p[1]=p[0] = fill_value;} return; |
29 |
+ case 1: ++p; *p = fill_value; return; |
29 |
+ case 1: *p = fill_value; return; |
30 |
+ case 2: ++s; *s = fill_value; return; |
30 |
+ case 2: *s = fill_value; return; |
31 |
+ case 3: { p[2]=p[1]=p[0] = fill_value;} return; |
31 |
+ case 3: { p[2]=p[1]=p[0] = fill_value;} return; |
32 |
default: |
32 |
default: |
33 |
if ((int)buffer&1) { |
33 |
if ((int)buffer&1) { |
34 |
- *((unsigned char*)buffer)++ = fill_value; size--; |
34 |
- *((unsigned char*)buffer)++ = fill_value; size--; |
35 |
+ ++p; *p = fill_value; size--; |
35 |
+ *p = fill_value; ++p; size--; |
36 |
+ buffer = p; |
36 |
+ buffer = p; |
37 |
} |
37 |
} |
38 |
if ((int)buffer&2) { |
38 |
if ((int)buffer&2) { |
39 |
- *((unsigned short*)buffer)++ = fill_value; size-=2; |
39 |
- *((unsigned short*)buffer)++ = fill_value; size-=2; |
40 |
+ ++s; *s = fill_value; size-=2; |
40 |
+ *s = fill_value; ++s; size-=2; |
41 |
+ buffer = s; |
41 |
+ buffer = s; |
42 |
} |
42 |
} |
43 |
lsize = size>>2; |
43 |
lsize = size>>2; |
44 |
+ unsigned int *up = buffer; |
44 |
+ unsigned int *up = buffer; |
45 |
while(lsize) { |
45 |
while(lsize) { |
46 |
- *((unsigned int*)buffer)++ = fill_value; |
46 |
- *((unsigned int*)buffer)++ = fill_value; |
47 |
+ ++up; |
|
|
48 |
+ *up = fill_value; |
47 |
+ *up = fill_value; |
|
|
48 |
+ ++up; |
49 |
lsize--; |
49 |
lsize--; |
50 |
} |
50 |
} |
51 |
+ buffer = up; |
51 |
+ buffer = up; |
52 |
if (size&2) { |
52 |
if (size&2) { |
53 |
- *((unsigned short*)buffer)++ = fill_value; |
53 |
- *((unsigned short*)buffer)++ = fill_value; |
54 |
+ s = buffer; |
54 |
+ s = buffer; |
55 |
+ ++s; |
|
|
56 |
+ *s = fill_value; |
55 |
+ *s = fill_value; |
|
|
56 |
+ ++s; |
57 |
} |
57 |
} |
58 |
if (size&1) { |
58 |
if (size&1) { |
59 |
- *((unsigned char*)buffer)++ = fill_value; |
59 |
- *((unsigned char*)buffer)++ = fill_value; |
60 |
+ p = buffer; |
60 |
+ p = buffer; |
61 |
+ ++p; |
|
|
62 |
+ *p = fill_value; |
61 |
+ *p = fill_value; |
|
|
62 |
+ ++p; |
63 |
} |
63 |
} |
64 |
} |
64 |
} |
65 |
} |
65 |
} |