mesa: Add _mesa_snprintf.
authorJosé Fonseca <jfonseca@vmware.com>
Wed, 7 Jan 2009 12:02:06 +0000 (12:02 +0000)
committerJosé Fonseca <jfonseca@vmware.com>
Wed, 7 Jan 2009 12:02:06 +0000 (12:02 +0000)
On Windows snprintf is renamed as _snprintf.

src/mesa/main/imports.c
src/mesa/main/imports.h
src/mesa/shader/slang/slang_codegen.c
src/mesa/shader/slang/slang_emit.c
src/mesa/shader/slang/slang_link.c

index 7231fa699cbd6de1804314a700dfa4c67027bde9..27d6df2f85a78aeab6157f53f9e6cfdfaf0c83a6 100644 (file)
@@ -909,6 +909,18 @@ _mesa_sprintf( char *str, const char *fmt, ... )
    return r;
 }
 
+/** Wrapper around vsnprintf() */
+int
+_mesa_snprintf( char *str, size_t size, const char *fmt, ... )
+{
+   int r;
+   va_list args;
+   va_start( args, fmt );  
+   r = vsnprintf( str, size, fmt, args );
+   va_end( args );
+   return r;
+}
+
 /** Wrapper around printf(), using vsprintf() for the formatting. */
 void
 _mesa_printf( const char *fmtString, ... )
index d91a1366b07ac9747bc89f72c327b0eb2a7cb99a..52d679cadd7332a5099c1653bee61d6b3bb59c0b 100644 (file)
@@ -752,6 +752,9 @@ _mesa_strtod( const char *s, char **end );
 extern int
 _mesa_sprintf( char *str, const char *fmt, ... );
 
+extern int
+_mesa_snprintf( char *str, size_t size, const char *fmt, ... );
+
 extern void
 _mesa_printf( const char *fmtString, ... );
 
index 7a2690b551d8994548ba3488cd98776ccea0b974..cc6d71478d6a851fbe0fd80404dddb65f60d9f0d 100644 (file)
@@ -1973,7 +1973,7 @@ _slang_make_array_constructor(slang_assemble_ctx *A, slang_operation *oper)
          */
          slang_variable *p = slang_variable_scope_grow(fun->parameters);
          char name[10];
-         snprintf(name, sizeof(name), "p%d", i);
+         _mesa_snprintf(name, sizeof(name), "p%d", i);
          p->a_name = slang_atom_pool_atom(A->atoms, name);
          p->type.qualifier = SLANG_QUAL_CONST;
          p->type.specifier.type = baseType;
index 35d323118e305f984fc8f56f34087d0ed2ecb073..3a837c9c10ec7e9476ac31b9b2416cf1238e69e0 100644 (file)
@@ -2096,8 +2096,8 @@ emit_var_ref(slang_emit_info *emitInfo, slang_ir_node *n)
       if (index < 0) {
          /* error */
          char s[100];
-         snprintf(s, sizeof(s), "Undefined variable '%s'",
-                  (char *) n->Var->a_name);
+         _mesa_snprintf(s, sizeof(s), "Undefined variable '%s'",
+                        (char *) n->Var->a_name);
          slang_info_log_error(emitInfo->log, s);
          return NULL;
       }
index b2fd9554a66b540cabd8b6fc87a7134506ae1717..108d11c7df452372074ab2b3521d7f5a2403482a 100644 (file)
@@ -137,15 +137,15 @@ link_varying_vars(struct gl_shader_program *shProg, struct gl_program *prog)
          }
          if (!bits_agree(var->Flags, v->Flags, PROG_PARAM_BIT_CENTROID)) {
             char msg[100];
-            snprintf(msg, sizeof(msg),
-                     "centroid modifier mismatch for '%s'", var->Name);
+            _mesa_snprintf(msg, sizeof(msg),
+                           "centroid modifier mismatch for '%s'", var->Name);
             link_error(shProg, msg);
             return GL_FALSE;
          }
          if (!bits_agree(var->Flags, v->Flags, PROG_PARAM_BIT_INVARIANT)) {
             char msg[100];
-            snprintf(msg, sizeof(msg),
-                     "invariant modifier mismatch for '%s'", var->Name);
+            _mesa_snprintf(msg, sizeof(msg),
+                           "invariant modifier mismatch for '%s'", var->Name);
             link_error(shProg, msg);
             return GL_FALSE;
          }