Rev 1888 | Rev 2071 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1888 | Rev 2070 | ||
|---|---|---|---|
| Line 265... | Line 265... | ||
| 265 | number_size = size; |
265 | number_size = size; |
| 266 | 266 | ||
| 267 | /* Collect sum of all prefixes/signs/... to calculate padding and leading zeroes */ |
267 | /* Collect sum of all prefixes/signs/... to calculate padding and leading zeroes */ |
| 268 | if (flags & __PRINTF_FLAG_PREFIX) { |
268 | if (flags & __PRINTF_FLAG_PREFIX) { |
| 269 | switch(base) { |
269 | switch(base) { |
| 270 | case 2: /* Binary formating is not standard, but usefull */ |
270 | case 2: /* Binary formating is not standard, but usefull */ |
| 271 | size += 2; |
271 | size += 2; |
| 272 | break; |
272 | break; |
| 273 | case 8: |
273 | case 8: |
| 274 | size++; |
274 | size++; |
| 275 | break; |
275 | break; |
| 276 | case 16: |
276 | case 16: |
| 277 | size += 2; |
277 | size += 2; |
| 278 | break; |
278 | break; |
| 279 | } |
279 | } |
| 280 | } |
280 | } |
| 281 | 281 | ||
| 282 | sgn = 0; |
282 | sgn = 0; |
| 283 | if (flags & __PRINTF_FLAG_SIGNED) { |
283 | if (flags & __PRINTF_FLAG_SIGNED) { |
| Line 326... | Line 326... | ||
| 326 | 326 | ||
| 327 | /* print prefix */ |
327 | /* print prefix */ |
| 328 | 328 | ||
| 329 | if (flags & __PRINTF_FLAG_PREFIX) { |
329 | if (flags & __PRINTF_FLAG_PREFIX) { |
| 330 | switch(base) { |
330 | switch(base) { |
| 331 | case 2: /* Binary formating is not standard, but usefull */ |
331 | case 2: /* Binary formating is not standard, but usefull */ |
| - | 332 | if (printf_putchar('0', ps) == 1) |
|
| - | 333 | counter++; |
|
| - | 334 | if (flags & __PRINTF_FLAG_BIGCHARS) { |
|
| 332 | if (printf_putchar('0', ps) == 1) |
335 | if (printf_putchar('B', ps) == 1) |
| 333 | counter++; |
336 | counter++; |
| 334 | if (flags & __PRINTF_FLAG_BIGCHARS) { |
- | |
| 335 | if (printf_putchar('B', ps) == 1) |
- | |
| 336 | counter++; |
- | |
| 337 | } else { |
337 | } else { |
| 338 | if (printf_putchar('b', ps) == 1) |
338 | if (printf_putchar('b', ps) == 1) |
| 339 | counter++; |
- | |
| 340 | } |
- | |
| 341 | break; |
- | |
| 342 | case 8: |
- | |
| 343 | if (printf_putchar('o', ps) == 1) |
- | |
| 344 | counter++; |
339 | counter++; |
| - | 340 | } |
|
| 345 | break; |
341 | break; |
| - | 342 | case 8: |
|
| - | 343 | if (printf_putchar('o', ps) == 1) |
|
| - | 344 | counter++; |
|
| - | 345 | break; |
|
| 346 | case 16: |
346 | case 16: |
| - | 347 | if (printf_putchar('0', ps) == 1) |
|
| - | 348 | counter++; |
|
| - | 349 | if (flags & __PRINTF_FLAG_BIGCHARS) { |
|
| 347 | if (printf_putchar('0', ps) == 1) |
350 | if (printf_putchar('X', ps) == 1) |
| 348 | counter++; |
351 | counter++; |
| 349 | if (flags & __PRINTF_FLAG_BIGCHARS) { |
- | |
| 350 | if (printf_putchar('X', ps) == 1) |
- | |
| 351 | counter++; |
- | |
| 352 | } else { |
352 | } else { |
| 353 | if (printf_putchar('x', ps) == 1) |
353 | if (printf_putchar('x', ps) == 1) |
| 354 | counter++; |
354 | counter++; |
| 355 | } |
355 | } |
| 356 | break; |
356 | break; |
| 357 | } |
357 | } |
| 358 | } |
358 | } |
| 359 | 359 | ||
| 360 | /* print leading zeroes */ |
360 | /* print leading zeroes */ |
| 361 | precision -= number_size; |
361 | precision -= number_size; |