diff --git a/.gitignore b/.gitignore index 38e025a..c5a8029 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ webpage out +test.c +a.out diff --git a/main.c b/main.c index a44c016..7e830a9 100644 --- a/main.c +++ b/main.c @@ -1,9 +1,11 @@ +#include #include #include #include #include +#include -#define DEFAULT_PAGE_LEN 4 +#define DEFAULT_PAGE_LEN 16 int pageChunkLen = DEFAULT_PAGE_LEN; char** pageChunk; @@ -32,22 +34,25 @@ void getUserConfig(int argc, char* argv[]){ } } -size_t save_chunk(char* buffer, size_t itemsize, size_t nitems, void* ingore){ +size_t save_chunk(char* buffer, size_t itemsize, size_t nitems, void* ignore){ size_t bytes = itemsize * nitems; static int nbchuck = 0; if (nbchuck >= pageChunkLen){ - pageChunkLen = (nbchuck+1) * 1.5; - pageChunk = realloc(pageChunk, sizeof(*pageChunk)*pageChunkLen); + pageChunkLen *= 1.5; + pageChunk = realloc(pageChunk, sizeof(*pageChunk) * pageChunkLen); + + printf("len = %d\n", pageChunkLen); + if (pageChunk == NULL){ perror("ERROR: Buy more ram.\n"); exit(1); } } - pageChunk[nbchuck] = malloc(bytes); - strncpy(pageChunk[nbchuck], buffer, bytes); + pageChunk[nbchuck] = malloc(bytes); pageChunk[nbchuck][bytes] = '\0'; + strncpy(pageChunk[nbchuck], buffer, bytes); nbchuck++; return bytes; @@ -65,18 +70,16 @@ void getPage(void){ CURLcode result = curl_easy_perform(curl); if (result != CURLE_OK){ - fprintf(stderr, "ERROR: %s\n", curl_easy_strerror(result)); + fprintf(stderr, "CURL ERROR: %s\n", curl_easy_strerror(result)); } curl_easy_cleanup(curl); } void printPage(void){ - int i=0; - for (i=0; i