Remove getline definition for OSX since we ship a getline implementation
authorFlorian Fainelli <florian@openwrt.org>
Fri, 5 Jan 2007 15:29:21 +0000 (15:29 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Fri, 5 Jan 2007 15:29:21 +0000 (15:29 +0000)
SVN-Revision: 5986

tools/ext2fs/patches/01-remove_getline.patch [new file with mode: 0644]

diff --git a/tools/ext2fs/patches/01-remove_getline.patch b/tools/ext2fs/patches/01-remove_getline.patch
new file mode 100644 (file)
index 0000000..d09404c
--- /dev/null
@@ -0,0 +1,52 @@
+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.