Issue #15181: importlib bytecode is unsigned and shouldn't have negative numbers.

This fixes a compiler warning with suncc.
This commit is contained in:
Antoine Pitrou 2012-06-25 17:32:43 +02:00
parent 7334be889d
commit 0ab5cf9b46
2 changed files with 648 additions and 647 deletions

View file

@ -31,7 +31,8 @@ main(int argc, char *argv[])
FILE *infile, *outfile = NULL; FILE *infile, *outfile = NULL;
struct stat st; struct stat st;
size_t text_size, data_size, n; size_t text_size, data_size, n;
char *text, *data; char *text;
unsigned char *data;
PyObject *code, *marshalled; PyObject *code, *marshalled;
if (argc != 3) { if (argc != 3) {
@ -85,7 +86,7 @@ main(int argc, char *argv[])
goto error; goto error;
assert(PyBytes_CheckExact(marshalled)); assert(PyBytes_CheckExact(marshalled));
data = PyBytes_AS_STRING(marshalled); data = (unsigned char *) PyBytes_AS_STRING(marshalled);
data_size = PyBytes_GET_SIZE(marshalled); data_size = PyBytes_GET_SIZE(marshalled);
outfile = fopen(outpath, "wb"); outfile = fopen(outpath, "wb");
@ -99,7 +100,7 @@ main(int argc, char *argv[])
size_t i, end = Py_MIN(n + 16, data_size); size_t i, end = Py_MIN(n + 16, data_size);
fprintf(outfile, " "); fprintf(outfile, " ");
for (i = n; i < end; i++) { for (i = n; i < end; i++) {
fprintf(outfile, "%d,", (int) data[i]); fprintf(outfile, "%d,", (unsigned int) data[i]);
} }
fprintf(outfile, "\n"); fprintf(outfile, "\n");
} }

File diff suppressed because it is too large Load diff