cmDspClass.c: _cmDspParseArgV() now returns the va_list. This seemed to solve a OS-X problem with va_arg() parsing.

This commit is contained in:
kevin 2013-05-22 10:32:45 -07:00
parent d0b9ccafe5
commit a9a615f94e

View File

@ -250,7 +250,7 @@ void* cmDspInstAllocate(
return p; return p;
} }
void _cmDspParseArgV( cmDspVarArg_t* a, va_list vl ) va_list _cmDspParseArgV( cmDspVarArg_t* a, va_list vl )
{ {
a->label = va_arg(vl,const char*); a->label = va_arg(vl,const char*);
a->constId = va_arg(vl,unsigned); a->constId = va_arg(vl,unsigned);
@ -258,6 +258,7 @@ void _cmDspParseArgV( cmDspVarArg_t* a, va_list vl )
a->cn = va_arg(vl,unsigned); a->cn = va_arg(vl,unsigned);
a->flags = va_arg(vl,unsigned); a->flags = va_arg(vl,unsigned);
a->doc = va_arg(vl,const char*); a->doc = va_arg(vl,const char*);
return vl;
} }
void* cmDspInstAllocateV(cmDspCtx_t* ctx, cmDspClass_t* classPtr, unsigned instByteCnt, unsigned instSymId, unsigned instId, unsigned storeSymId, unsigned va_cnt, va_list vl0, ... ) void* cmDspInstAllocateV(cmDspCtx_t* ctx, cmDspClass_t* classPtr, unsigned instByteCnt, unsigned instSymId, unsigned instId, unsigned storeSymId, unsigned va_cnt, va_list vl0, ... )
@ -278,7 +279,7 @@ void* cmDspInstAllocateV(cmDspCtx_t* ctx, cmDspClass_t* classPtr, unsigned instB
argCnt += repeatCnt; argCnt += repeatCnt;
_cmDspParseArgV(&a,vl1); vl1 = _cmDspParseArgV(&a,vl1);
} }
cmDspVarArg_t aa[ argCnt+1 ]; cmDspVarArg_t aa[ argCnt+1 ];
@ -287,7 +288,7 @@ void* cmDspInstAllocateV(cmDspCtx_t* ctx, cmDspClass_t* classPtr, unsigned instB
{ {
cmDspVarArg_t a; cmDspVarArg_t a;
_cmDspParseArgV(&a,vl2); vl2 = _cmDspParseArgV(&a,vl2);
cmDspArgSetupN(ctx,aa,argCnt,j,repeatCnt,a.label,a.constId,a.rn, a.cn, a.flags, a.doc ); cmDspArgSetupN(ctx,aa,argCnt,j,repeatCnt,a.label,a.constId,a.rn, a.cn, a.flags, a.doc );
j += repeatCnt; j += repeatCnt;