diff -urN genext2fs-1.4rc1/genext2fs.c genext2fs-1.4rc1.new/genext2fs.c --- genext2fs-1.4rc1/genext2fs.c 2005-05-17 18:29:10.000000000 +0200 +++ genext2fs-1.4rc1.new/genext2fs.c 2007-01-03 15:21:16.000000000 +0100 @@ -243,48 +243,6 @@ } #endif // defined SNPRINTF_STORAGE_CLASS -#if defined(__APPLE__) && defined(__GNUC__) -// getline() replacement for Darwin, might work on other systems -// written according to the getline man page included with Debian Linux -ssize_t -getline(char **lineptr, size_t *n, FILE *stream) -{ - char *buf = *lineptr; // could be NULL, in which case we allocate - size_t bufsize = *n; // current buffer size, adjust if we (re)alloc - - char *temp = NULL; - size_t tempsize = 0; - - // temp is not a C string and we don't own the buffer it points into - // must copy into a malloced buffer and NULL terminate - temp = fgetln(stream, &tempsize); - if(!temp) return -1; - - tempsize++; // adjust for NULL terminator - if(buf) { - // check if we have to reallocate - if(bufsize < tempsize) { - bufsize = tempsize; - buf = (char*)realloc(buf, tempsize); - if(!buf) return -1; - } - } else { - bufsize = tempsize; - buf = (char*)malloc(bufsize); - if(!buf) return -1; - } - - memcpy(buf, temp, tempsize-1); - buf[tempsize-1] = '\0'; - - // give new pointer and size back, nondestructive if we didn't change anything.. - *n = bufsize; - *lineptr = buf; - - return (ssize_t)(tempsize-1); // don't include the NULL terminator, per getline man page -} -#endif - // Convert a numerical string to a float, and multiply the result by an // SI-style multiplier if provided; supported multipliers are Ki, Mi, Gi, k, M // and G.