]> git.cworth.org Git - apitrace/blobdiff - common/trace_parser.cpp
os: Cast pthread_create's arg parameter.
[apitrace] / common / trace_parser.cpp
index 3b159017eabc4c5b5be76d7e138d14ee320bff39..f3aea7e7cf482f26f69e74432691bcefbb75ab1c 100644 (file)
@@ -248,9 +248,10 @@ Parser::parse_function_sig(void) {
                 api = trace::API_GL;
             } else if (n[0] == 'e' && n[1] == 'g' && n[2] == 'l' && n[3] >= 'A' && n[3] <= 'Z') { // egl[A-Z]*
                 api = trace::API_EGL;
-            } else if (n[0] == 'D' &&
-                       ((n[1] == 'i' && n[2] == 'r' && n[3] == 'e' && n[4] == 'c' && n[5] == 't') || // Direct*
-                        (n[1] == '3' && n[2] == 'D'))) { // D3D*
+            } else if ((n[0] == 'D' &&
+                        ((n[1] == 'i' && n[2] == 'r' && n[3] == 'e' && n[4] == 'c' && n[5] == 't') || // Direct*
+                         (n[1] == '3' && n[2] == 'D'))) || // D3D*
+                       (n[0] == 'C' && n[1] == 'r' && n[2] == 'e' && n[3] == 'a' && n[4] == 't' && n[5] == 'e')) { // Create*
                 api = trace::API_DX;
             } else {
                 /* TODO */
@@ -833,7 +834,7 @@ Parser::read_sint(void) {
     c = read_byte();
     switch (c) {
     case trace::TYPE_SINT:
-        return -read_uint();
+        return -(signed long long)read_uint();
     case trace::TYPE_UINT:
         return read_uint();
     default: