0
bool load(FILE* file, BYTE** content, size_t* length)

{

char* data = malloc(sizeof(BYTE));
int i = 0;

while ((data[i] = fgetc(file)) != EOF)
{
    i++;
    data = realloc(data, (sizeof(BYTE) * i) );
}

*content = data;                   //store address of memory in *content
*length = i;                       //store length of memory in *length

free(data);

return true;

}

I'm having problems with server.c and wanted to see if it's because of my load function implementation. Any help would be appreciated.

0

1 Answer 1

0

One problem is here free(data);. You told *content to point to the address holding data, then free "destroys" that memory.

2
  • So when can I free this memory?
    – user34304
    Commented Feb 17, 2017 at 15:57
  • You don't. content will be freed in main around line 1127. Commented Feb 17, 2017 at 16:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .