Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Aug 2012 19:25:01 +0000
From:      jhagewood@FreeBSD.org
To:        svn-soc-all@FreeBSD.org
Subject:   socsvn commit: r240503 - in soc2012/jhagewood: diff sdiff
Message-ID:  <20120818192501.1CCA8106567F@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhagewood
Date: Sat Aug 18 19:25:00 2012
New Revision: 240503
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=240503

Log:
  working decompression

Modified:
  soc2012/jhagewood/diff/decompress.c
  soc2012/jhagewood/sdiff/decompress.c

Modified: soc2012/jhagewood/diff/decompress.c
==============================================================================
--- soc2012/jhagewood/diff/decompress.c	Sat Aug 18 18:26:25 2012	(r240502)
+++ soc2012/jhagewood/diff/decompress.c	Sat Aug 18 19:25:00 2012	(r240503)
@@ -66,23 +66,24 @@
 	char buf[MAXBUFSIZE];
 	char ch;
 	int i = 0;
-	int length;
-	gzFile comprfile; 
+	gzFile *comprfile; 
 	
-	file = tmpfile();
+	file = fopen("/tmp/zdiff.XXXXXXXX", "w+");
 	comprfile = gzopen(filename, mode);
 	
 	if (comprfile == Z_NULL)
 		err(1, "Could not open compressed file.");
-
-	for (ch = '\0'; ch != NULL; ch = gzgetc(comprfile)) {
+	
+	for (ch = '\0'; ch != EOF ; ch = gzgetc(comprfile)) {
 		buf[i] = ch;
 		i++;
 	}
+	
 	for (i = 0; buf[i] != EOF; i++) {
-		fputs(buf, file);
-	} 
-	 
+		fputc(buf[i], file);
+	}
+	rewind(file);
+	
 	return file;
 }
 

Modified: soc2012/jhagewood/sdiff/decompress.c
==============================================================================
--- soc2012/jhagewood/sdiff/decompress.c	Sat Aug 18 18:26:25 2012	(r240502)
+++ soc2012/jhagewood/sdiff/decompress.c	Sat Aug 18 19:25:00 2012	(r240503)
@@ -65,23 +65,24 @@
 	char buf[MAXBUFSIZE];
 	char ch;
 	int i = 0;
-	int length;
-	gzFile comprfile; 
+	gzFile *comprfile; 
 	
-	file = tmpfile();
+	file = fopen("/tmp/zdiff.XXXXXXXX", "w+");
 	comprfile = gzopen(filename, mode);
 	
 	if (comprfile == Z_NULL)
 		err(1, "Could not open compressed file.");
-
-	for (ch = '\0'; ch != NULL; ch = gzgetc(comprfile)) {
+	
+	for (ch = '\0'; ch != EOF ; ch = gzgetc(comprfile)) {
 		buf[i] = ch;
 		i++;
 	}
+	
 	for (i = 0; buf[i] != EOF; i++) {
-		fputs(buf, file);
-	} 
-	 
+		fputc(buf[i], file);
+	}
+	rewind(file);
+	
 	return file;
 }
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120818192501.1CCA8106567F>