| 131 | */ |
| 132 | |
| 133 | char *int10_to_str(long int val,char *dst,int radix) |
| 134 | { |
| 135 | char buffer[65]; |
| 136 | register char *p; |
| 137 | long int new_val; |
| 138 | unsigned long int uval = (unsigned long int) val; |
| 139 | |
| 140 | if (radix < 0) /* -10 */ |
| 141 | { |
| 142 | if (val < 0) |
| 143 | { |
| 144 | *dst++ = '-'; |
| 145 | /* Avoid integer overflow in (-val) for LONGLONG_MIN (BUG#31799). */ |
| 146 | uval = (unsigned long int)0 - uval; |
| 147 | } |
| 148 | } |
| 149 | |
| 150 | p = &buffer[sizeof(buffer)-1]; |
| 151 | *p = '\0'; |
| 152 | new_val= (long) (uval / 10); |
| 153 | *--p = '0'+ (char) (uval - (unsigned long) new_val * 10); |
| 154 | val = new_val; |
| 155 | |
| 156 | while (val != 0) |
| 157 | { |
| 158 | new_val=val/10; |
| 159 | *--p = '0' + (char) (val-new_val*10); |
| 160 | val= new_val; |
| 161 | } |
| 162 | while ((*dst++ = *p++) != 0) ; |
| 163 | return dst-1; |
| 164 | } |
no outgoing calls
no test coverage detected