947 size_t stpos = 0; |
947 size_t stpos = 0; |
948 DavQLStackObj *stack = calloc(stsize, sizeof(DavQLStackObj)); |
948 DavQLStackObj *stack = calloc(stsize, sizeof(DavQLStackObj)); |
949 #define DAVQL_PUSH(obj) \ |
949 #define DAVQL_PUSH(obj) \ |
950 if(stpos == stsize) { \ |
950 if(stpos == stsize) { \ |
951 stsize += 64; \ |
951 stsize += 64; \ |
952 stack = realloc(stack, stsize * sizeof(DavQLStackObj)); \ |
952 DavQLStackObj *stack_newptr; \ |
|
953 stack_newptr = realloc(stack, stsize * sizeof(DavQLStackObj)); \ |
|
954 if(stack_newptr) { \ |
|
955 stack = stack_newptr; \ |
|
956 } else { \ |
|
957 free(stack); \ |
|
958 return -1; \ |
|
959 }\ |
953 } \ |
960 } \ |
954 stack[stpos++] = obj; |
961 stack[stpos++] = obj; |
955 #define DAVQL_PUSH_INT(intval) \ |
962 #define DAVQL_PUSH_INT(intval) \ |
956 { \ |
963 { \ |
957 DavQLStackObj intobj; \ |
964 DavQLStackObj intobj; \ |