• Home
  • Raw
  • Download

Lines Matching refs:pBuf

124 static void ebFree(ExpandBuf* pBuf)  in ebFree()  argument
126 if (pBuf != NULL) { in ebFree()
127 free(pBuf->storage); in ebFree()
128 free(pBuf); in ebFree()
138 static inline unsigned char* ebGetBuffer(ExpandBuf* pBuf) in ebGetBuffer() argument
140 return pBuf->storage; in ebGetBuffer()
146 static inline size_t ebGetLength(ExpandBuf* pBuf) in ebGetLength() argument
148 return pBuf->curLen; in ebGetLength()
154 static void ebClear(ExpandBuf* pBuf) in ebClear() argument
156 pBuf->curLen = 0; in ebClear()
162 static int ebEnsureCapacity(ExpandBuf* pBuf, int size) in ebEnsureCapacity() argument
166 if (pBuf->curLen + size > pBuf->maxLen) { in ebEnsureCapacity()
167 int newSize = pBuf->curLen + size + 128; /* oversize slightly */ in ebEnsureCapacity()
168 unsigned char* newStorage = realloc(pBuf->storage, newSize); in ebEnsureCapacity()
174 pBuf->storage = newStorage; in ebEnsureCapacity()
175 pBuf->maxLen = newSize; in ebEnsureCapacity()
178 assert(pBuf->curLen + size <= pBuf->maxLen); in ebEnsureCapacity()
185 static int ebAddData(ExpandBuf* pBuf, const void* data, size_t count) in ebAddData() argument
187 ebEnsureCapacity(pBuf, count); in ebAddData()
188 memcpy(pBuf->storage + pBuf->curLen, data, count); in ebAddData()
189 pBuf->curLen += count; in ebAddData()
196 static int ebReadString(ExpandBuf* pBuf, FILE* in) in ebReadString() argument
201 ebEnsureCapacity(pBuf, 1); in ebReadString()
209 pBuf->storage[pBuf->curLen++] = (unsigned char) ic; in ebReadString()
221 static int ebReadData(ExpandBuf* pBuf, FILE* in, size_t count, int eofExpected) in ebReadData() argument
227 ebEnsureCapacity(pBuf, count); in ebReadData()
228 actual = fread(pBuf->storage + pBuf->curLen, 1, count, in); in ebReadData()
238 pBuf->curLen += count; in ebReadData()
239 assert(pBuf->curLen <= pBuf->maxLen); in ebReadData()
247 static int ebWriteData(ExpandBuf* pBuf, FILE* out) in ebWriteData() argument
251 assert(pBuf->curLen > 0); in ebWriteData()
252 assert(pBuf->curLen <= pBuf->maxLen); in ebWriteData()
254 actual = fwrite(pBuf->storage, 1, pBuf->curLen, out); in ebWriteData()
255 if (actual != pBuf->curLen) { in ebWriteData()
256 fprintf(stderr, "ERROR: write %d of %d bytes\n", actual, pBuf->curLen); in ebWriteData()
260 pBuf->curLen = 0; in ebWriteData()
426 static int processHeapDump(ExpandBuf* pBuf, FILE* out) in processHeapDump() argument
429 unsigned char* origBuf = ebGetBuffer(pBuf); in processHeapDump()
431 int len = ebGetLength(pBuf); in processHeapDump()
434 pBuf = NULL; /* we just use the raw pointer from here forward */ in processHeapDump()
576 ExpandBuf* pBuf; in filterData() local
579 pBuf = ebAlloc(); in filterData()
580 if (pBuf == NULL) in filterData()
586 if (ebReadString(pBuf, in) != 0) in filterData()
589 magicString = (const char*)ebGetBuffer(pBuf); in filterData()
600 (ebGetBuffer(pBuf))[17] = '2'; in filterData()
601 if (ebWriteData(pBuf, out) != 0) in filterData()
609 if (ebReadData(pBuf, in, 12, FALSE) != 0) in filterData()
611 if (ebWriteData(pBuf, out) != 0) in filterData()
621 assert(ebGetLength(pBuf) == 0); in filterData()
624 if (ebReadData(pBuf, in, 1, TRUE) != 0) in filterData()
630 if (ebReadData(pBuf, in, kRecHdrLen-1, FALSE) != 0) in filterData()
633 unsigned char* buf = ebGetBuffer(pBuf); in filterData()
644 if (ebReadData(pBuf, in, length, FALSE) != 0) in filterData()
653 if (processHeapDump(pBuf, out) != 0) in filterData()
655 ebClear(pBuf); in filterData()
659 if (ebWriteData(pBuf, out) != 0) in filterData()
667 ebFree(pBuf); in filterData()