CBBlockHeaders * CBNewBlockHeadersFromData(CBByteArray * data) { CBBlockHeaders * self = malloc(sizeof(*self)); CBGetObject(self)->free = CBFreeBlockHeaders; CBInitBlockHeadersFromData(self, data); return self; }
CBBlockHeaders * CBNewBlockHeadersFromData(CBByteArray * data,void (*logError)(char *,...)) { CBBlockHeaders * self = malloc(sizeof(*self)); if (NOT self) { logError("Cannot allocate %i bytes of memory in CBNewBlockHeadersFromData\n",sizeof(*self)); return NULL; } CBGetObject(self)->free = CBFreeBlockHeaders; if(CBInitBlockHeadersFromData(self,data,logError)) return self; free(self); return NULL; }