[PD-cvs] pd/src builtins.c,1.1.2.17,1.1.2.18
Mathieu Bouchard
matju at users.sourceforge.net
Thu Jun 28 09:10:44 CEST 2007
Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4751
Modified Files:
Tag: desiredata
builtins.c
Log Message:
removing some MAXPDSTRING
Index: builtins.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/builtins.c,v
retrieving revision 1.1.2.17
retrieving revision 1.1.2.18
diff -C2 -d -r1.1.2.17 -r1.1.2.18
*** builtins.c 28 Jun 2007 05:24:18 -0000 1.1.2.17
--- builtins.c 28 Jun 2007 07:10:42 -0000 1.1.2.18
***************
*** 9,12 ****
--- 9,13 ----
#include "s_stuff.h"
#include <stdlib.h>
+ #include <stdarg.h>
#include <math.h>
#include <stdio.h>
***************
*** 1931,1943 ****
return x;
}
static void makefilename_float(t_makefilename *x, t_floatarg f) {
! char buf[MAXPDSTRING];
! sprintf(buf, x->format->name, (int)f);
outlet_symbol(x->outlet, gensym(buf));
}
static void makefilename_symbol(t_makefilename *x, t_symbol *s) {
! char buf[MAXPDSTRING];
! sprintf(buf, x->format->name, s->name);
outlet_symbol(x->outlet, gensym(buf));
}
--- 1932,1961 ----
return x;
}
+
+ /* untested */
+ /*
+ extern "C" char *masprintf (const char *s, ...) {
+ va_list args;
+ va_start(args,s);
+ int n = vsnprintf(0,0,s,args);
+ va_end(args);
+ char *buf = (char *)malloc(n+1);
+ va_start(args,s);
+ vsnprintf(buf,n+1,s,args);
+ va_end(args);
+ return buf;
+ }
+ */
+
+ /* doesn't do any typechecking or even counting the % signs properly */
static void makefilename_float(t_makefilename *x, t_floatarg f) {
! char *buf; asprintf(&buf, x->format->name, (int)f);
outlet_symbol(x->outlet, gensym(buf));
+ free(buf);
}
static void makefilename_symbol(t_makefilename *x, t_symbol *s) {
! char *buf; asprintf(&buf, x->format->name, s->name);
outlet_symbol(x->outlet, gensym(buf));
+ free(buf);
}
More information about the Pd-cvs
mailing list