From: Geert Uytterhoeven <geert@linux-m68k.org>
To: Linus Torvalds <torvalds@osdl.org>
Cc: Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: Kernel SCM saga..
Date: Fri, 8 Apr 2005 11:23:19 +0200 (CEST) [thread overview]
Message-ID: <Pine.LNX.4.62.0504081119050.29212@anakin> (raw)
In-Reply-To: <20050408073431.GA5463@ds9.ch>
On Fri, 8 Apr 2005, Marcel Lanz wrote:
> git on sarge
>
> --- git-0.02/Makefile.orig 2005-04-07 23:06:19.000000000 +0200
> +++ git-0.02/Makefile 2005-04-08 09:24:28.472672224 +0200
> @@ -8,7 +8,7 @@ all: $(PROG)
> install: $(PROG)
> install $(PROG) $(HOME)/bin/
>
> -LIBS= -lssl
> +LIBS= -lssl -lz
>
> init-db: init-db.o
>
I found a few more `issues' after adding `-O3 -Wall'.
Most are cosmetic, but the missing return value in remove_file_from_cache() is
a real bug. Hmm, upon closer look the caller uses its return value in a weird
way, so another bug may be hiding in add_file_to_cache().
Caveat: everything is untested, besides compilation ;-)
diff -purN git-0.02.orig/Makefile git-0.02/Makefile
--- git-0.02.orig/Makefile 2005-04-07 23:06:19.000000000 +0200
+++ git-0.02/Makefile 2005-04-08 11:02:02.000000000 +0200
@@ -1,4 +1,4 @@
-CFLAGS=-g
+CFLAGS=-g -O3 -Wall
CC=gcc
PROG=update-cache show-diff init-db write-tree read-tree commit-tree cat-file
@@ -8,7 +8,7 @@ all: $(PROG)
install: $(PROG)
install $(PROG) $(HOME)/bin/
-LIBS= -lssl
+LIBS= -lssl -lz
init-db: init-db.o
diff -purN git-0.02.orig/cat-file.c git-0.02/cat-file.c
--- git-0.02.orig/cat-file.c 2005-04-07 23:15:17.000000000 +0200
+++ git-0.02/cat-file.c 2005-04-08 11:07:28.000000000 +0200
@@ -5,6 +5,8 @@
*/
#include "cache.h"
+#include <string.h>
+
int main(int argc, char **argv)
{
unsigned char sha1[20];
@@ -25,4 +27,5 @@ int main(int argc, char **argv)
if (write(fd, buf, size) != size)
strcpy(type, "bad");
printf("%s: %s\n", template, type);
+ exit(0);
}
diff -purN git-0.02.orig/commit-tree.c git-0.02/commit-tree.c
--- git-0.02.orig/commit-tree.c 2005-04-07 23:15:17.000000000 +0200
+++ git-0.02/commit-tree.c 2005-04-08 11:06:08.000000000 +0200
@@ -6,6 +6,7 @@
#include "cache.h"
#include <pwd.h>
+#include <string.h>
#include <time.h>
#define BLOCKING (1ul << 14)
diff -purN git-0.02.orig/init-db.c git-0.02/init-db.c
--- git-0.02.orig/init-db.c 2005-04-07 23:15:17.000000000 +0200
+++ git-0.02/init-db.c 2005-04-08 11:07:33.000000000 +0200
@@ -5,10 +5,12 @@
*/
#include "cache.h"
+#include <string.h>
+
int main(int argc, char **argv)
{
char *sha1_dir = getenv(DB_ENVIRONMENT), *path;
- int len, i, fd;
+ int len, i;
if (mkdir(".dircache", 0700) < 0) {
perror("unable to create .dircache");
@@ -25,7 +27,7 @@ int main(int argc, char **argv)
if (sha1_dir) {
struct stat st;
if (!stat(sha1_dir, &st) < 0 && S_ISDIR(st.st_mode))
- return;
+ exit(1);
fprintf(stderr, "DB_ENVIRONMENT set to bad directory %s: ", sha1_dir);
}
diff -purN git-0.02.orig/read-cache.c git-0.02/read-cache.c
--- git-0.02.orig/read-cache.c 2005-04-07 23:23:43.000000000 +0200
+++ git-0.02/read-cache.c 2005-04-08 11:07:37.000000000 +0200
@@ -5,6 +5,8 @@
*/
#include "cache.h"
+#include <string.h>
+
const char *sha1_file_directory = NULL;
struct cache_entry **active_cache = NULL;
unsigned int active_nr = 0, active_alloc = 0;
@@ -89,7 +91,7 @@ void * read_sha1_file(unsigned char *sha
z_stream stream;
char buffer[8192];
struct stat st;
- int i, fd, ret, bytes;
+ int fd, ret, bytes;
void *map, *buf;
char *filename = sha1_file_name(sha1);
@@ -173,7 +175,7 @@ int write_sha1_file(char *buf, unsigned
int write_sha1_buffer(unsigned char *sha1, void *buf, unsigned int size)
{
char *filename = sha1_file_name(sha1);
- int i, fd;
+ int fd;
fd = open(filename, O_WRONLY | O_CREAT | O_EXCL, 0666);
if (fd < 0)
diff -purN git-0.02.orig/read-tree.c git-0.02/read-tree.c
--- git-0.02.orig/read-tree.c 2005-04-08 04:58:44.000000000 +0200
+++ git-0.02/read-tree.c 2005-04-08 11:07:41.000000000 +0200
@@ -5,6 +5,8 @@
*/
#include "cache.h"
+#include <string.h>
+
static void create_directories(const char *path)
{
int len = strlen(path);
@@ -72,7 +74,6 @@ static int unpack(unsigned char *sha1)
int main(int argc, char **argv)
{
- int fd;
unsigned char sha1[20];
if (argc != 2)
diff -purN git-0.02.orig/show-diff.c git-0.02/show-diff.c
--- git-0.02.orig/show-diff.c 2005-04-07 23:15:17.000000000 +0200
+++ git-0.02/show-diff.c 2005-04-08 11:07:44.000000000 +0200
@@ -5,6 +5,8 @@
*/
#include "cache.h"
+#include <string.h>
+
#define MTIME_CHANGED 0x0001
#define CTIME_CHANGED 0x0002
#define OWNER_CHANGED 0x0004
@@ -60,7 +62,6 @@ int main(int argc, char **argv)
struct stat st;
struct cache_entry *ce = active_cache[i];
int n, changed;
- unsigned int mode;
unsigned long size;
char type[20];
void *new;
diff -purN git-0.02.orig/update-cache.c git-0.02/update-cache.c
--- git-0.02.orig/update-cache.c 2005-04-07 23:15:17.000000000 +0200
+++ git-0.02/update-cache.c 2005-04-08 11:08:55.000000000 +0200
@@ -5,6 +5,8 @@
*/
#include "cache.h"
+#include <string.h>
+
static int cache_name_compare(const char *name1, int len1, const char *name2, int len2)
{
int len = len1 < len2 ? len1 : len2;
@@ -50,6 +52,7 @@ static int remove_file_from_cache(char *
if (pos < active_nr)
memmove(active_cache + pos, active_cache + pos + 1, (active_nr - pos - 1) * sizeof(struct cache_entry *));
}
+ return 0;
}
static int add_cache_entry(struct cache_entry *ce)
@@ -250,4 +253,5 @@ int main(int argc, char **argv)
return 0;
out:
unlink(".dircache/index.lock");
+ exit(0);
}
diff -purN git-0.02.orig/write-tree.c git-0.02/write-tree.c
--- git-0.02.orig/write-tree.c 2005-04-07 23:15:17.000000000 +0200
+++ git-0.02/write-tree.c 2005-04-08 11:07:51.000000000 +0200
@@ -5,6 +5,8 @@
*/
#include "cache.h"
+#include <string.h>
+
static int check_valid_sha1(unsigned char *sha1)
{
char *filename = sha1_file_name(sha1);
@@ -31,7 +33,7 @@ static int prepend_integer(char *buffer,
int main(int argc, char **argv)
{
- unsigned long size, offset, val;
+ unsigned long size, offset;
int i, entries = read_cache();
char *buffer;
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
next prev parent reply other threads:[~2005-04-08 9:23 UTC|newest]
Thread overview: 201+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-04-06 15:42 Kernel SCM saga Linus Torvalds
2005-04-06 16:00 ` Greg KH
2005-04-07 16:40 ` Rik van Riel
2005-04-08 0:53 ` Jesse Barnes
2005-04-06 16:09 ` Daniel Phillips
2005-04-06 19:07 ` Jon Smirl
2005-04-06 19:24 ` Matan Peled
2005-04-06 19:49 ` Jon Smirl
2005-04-06 20:34 ` Hua Zhong
2005-04-07 1:31 ` Christoph Lameter
2005-04-06 19:39 ` Paul P Komkoff Jr
2005-04-07 1:40 ` Martin Pool
2005-04-07 1:47 ` Jeff Garzik
2005-04-07 2:26 ` Martin Pool
2005-04-07 2:32 ` David Lang
2005-04-07 5:38 ` Martin Pool
2005-04-07 23:27 ` Linus Torvalds
2005-04-08 5:56 ` Martin Pool
2005-04-08 6:41 ` Linus Torvalds
2005-04-08 8:38 ` Andrea Arcangeli
2005-04-08 23:38 ` Daniel Phillips
2005-04-09 2:54 ` Andrea Arcangeli
2005-04-09 0:12 ` Linus Torvalds
2005-04-09 2:27 ` Andrea Arcangeli
2005-04-09 2:32 ` David Lang
2005-04-09 3:08 ` Brian Gerst
2005-04-09 3:15 ` Andrea Arcangeli
2005-04-09 5:45 ` Linus Torvalds
2005-04-09 22:55 ` David S. Miller
2005-04-09 23:13 ` Linus Torvalds
2005-04-10 0:14 ` Chris Wedgwood
2005-04-10 1:56 ` Paul Jackson
2005-04-10 12:03 ` Ingo Molnar
2005-04-10 17:38 ` Paul Jackson
2005-04-10 17:46 ` Ingo Molnar
2005-04-10 17:56 ` Paul Jackson
2005-04-10 0:22 ` Paul Jackson
2005-04-10 11:33 ` Ingo Molnar
2005-04-10 17:55 ` Matthias Andree
2005-04-09 16:33 ` Roman Zippel
2005-04-09 23:31 ` Tupshin Harper
2005-04-10 17:24 ` Code snippet to reconstruct ancestry graph from bk repo Paul P Komkoff Jr
2005-04-10 18:19 ` Roman Zippel
2005-04-08 16:46 ` Kernel SCM saga Catalin Marinas
2005-04-07 8:14 ` Magnus Damm
2005-04-07 7:53 ` Zwane Mwaikambo
2005-04-07 3:35 ` Daniel Phillips
2005-04-07 15:08 ` Daniel Phillips
2005-04-07 6:36 ` bert hubert
2005-04-06 23:22 ` Jon Masters
2005-04-07 6:51 ` Paul Mackerras
2005-04-07 7:48 ` Arjan van de Ven
2005-04-07 15:10 ` Linus Torvalds
2005-04-07 17:00 ` Daniel Phillips
2005-04-07 17:38 ` Linus Torvalds
2005-04-07 17:47 ` Chris Wedgwood
2005-04-07 18:06 ` Magnus Damm
2005-04-07 18:36 ` Daniel Phillips
2005-04-08 3:35 ` Jeff Garzik
2005-04-07 19:56 ` Sam Ravnborg
2005-04-07 23:21 ` Dave Airlie
2005-04-07 7:18 ` David Woodhouse
2005-04-07 8:50 ` Andrew Morton
2005-04-07 9:20 ` Paul Mackerras
2005-04-07 9:46 ` Andrew Morton
2005-04-07 11:17 ` Paul Mackerras
2005-04-07 10:41 ` Geert Uytterhoeven
2005-04-07 9:25 ` David Woodhouse
2005-04-07 9:49 ` Andrew Morton
2005-04-07 9:55 ` Russell King
2005-04-07 10:11 ` David Woodhouse
2005-04-07 9:40 ` David Vrabel
2005-04-07 9:24 ` Sergei Organov
2005-04-07 10:30 ` Matthias Andree
2005-04-07 10:54 ` Andrew Walrond
2005-04-09 16:17 ` David Roundy
2005-04-10 9:24 ` Giuseppe Bilotta
2005-04-10 13:51 ` David Roundy
2005-04-07 15:32 ` Linus Torvalds
2005-04-07 17:09 ` Daniel Phillips
2005-04-07 17:10 ` Al Viro
2005-04-07 17:47 ` Linus Torvalds
2005-04-07 18:04 ` Jörn Engel
2005-04-07 18:27 ` Daniel Phillips
2005-04-07 20:54 ` Arjan van de Ven
2005-04-08 3:41 ` Jeff Garzik
2005-04-07 17:52 ` Bartlomiej Zolnierkiewicz
2005-04-07 17:54 ` Daniel Phillips
2005-04-07 18:13 ` Dmitry Yusupov
2005-04-07 18:29 ` Daniel Phillips
2005-04-10 22:33 ` Troy Benjegerdes
2005-04-11 0:00 ` Christian Parpart
2005-04-08 17:24 ` Jon Masters
2005-04-08 22:05 ` Daniel Phillips
2005-04-08 22:52 ` Roman Zippel
2005-04-08 23:46 ` Tupshin Harper
2005-04-09 1:00 ` Roman Zippel
2005-04-09 1:23 ` Tupshin Harper
2005-04-09 16:52 ` Eric D. Mudama
2005-04-09 17:40 ` Roman Zippel
2005-04-09 18:56 ` Ray Lee
2005-04-07 7:44 ` Jan Hudec
2005-04-08 6:14 ` Matthias Urlichs
2005-04-09 1:01 ` Marcin Dalecki
2005-04-09 8:32 ` Jan Hudec
2005-04-11 2:26 ` Miles Bader
2005-04-11 2:56 ` Marcin Dalecki
2005-04-11 6:36 ` Jan Hudec
2005-04-07 10:56 ` Andrew Walrond
2005-04-08 0:57 ` Ian Wienand
2005-04-08 4:13 ` Chris Wedgwood
2005-04-08 4:42 ` Linus Torvalds
2005-04-08 5:04 ` Chris Wedgwood
2005-04-08 5:14 ` H. Peter Anvin
2005-04-08 7:05 ` Rogan Dawes
2005-04-08 7:21 ` Daniel Phillips
2005-04-08 7:49 ` H. Peter Anvin
2005-04-08 7:14 ` Andrea Arcangeli
2005-04-08 12:02 ` Matthias Andree
2005-04-08 12:21 ` Florian Weimer
2005-04-08 14:26 ` Linus Torvalds
2005-04-08 16:15 ` Matthias-Christian Ott
2005-04-08 17:14 ` Linus Torvalds
2005-04-08 17:15 ` Chris Wedgwood
2005-04-08 17:46 ` Linus Torvalds
2005-04-08 18:05 ` Chris Wedgwood
2005-04-08 19:03 ` Linus Torvalds
2005-04-08 19:16 ` Chris Wedgwood
2005-04-08 19:38 ` Florian Weimer
2005-04-08 19:48 ` Chris Wedgwood
2005-04-08 19:39 ` Linus Torvalds
2005-04-08 20:11 ` Uncached stat performace [ Was: Re: Kernel SCM saga.. ] Ragnar Kjørstad
2005-04-08 20:14 ` Chris Wedgwood
2005-04-08 20:50 ` Kernel SCM saga Luck, Tony
2005-04-08 21:27 ` Linus Torvalds
2005-04-09 17:14 ` Roman Zippel
2005-04-09 7:20 ` Willy Tarreau
2005-04-09 15:15 ` Paul Jackson
2005-04-08 17:25 ` Matthias-Christian Ott
2005-04-08 18:14 ` Linus Torvalds
2005-04-08 18:28 ` Jon Smirl
2005-04-08 18:58 ` Florian Weimer
2005-04-09 1:11 ` Marcin Dalecki
2005-04-09 1:50 ` David Lang
2005-04-09 22:12 ` Florian Weimer
2005-04-08 19:16 ` Matthias-Christian Ott
2005-04-08 19:32 ` Linus Torvalds
2005-04-08 19:44 ` Matthias-Christian Ott
2005-04-09 1:09 ` Marcin Dalecki
2005-04-08 17:35 ` Jeff Garzik
2005-04-08 18:47 ` Linus Torvalds
2005-04-08 18:56 ` Chris Wedgwood
2005-04-09 7:37 ` Willy Tarreau
2005-04-09 7:47 ` Neil Brown
2005-04-09 8:00 ` Willy Tarreau
2005-04-09 9:34 ` Neil Brown
2005-04-09 15:40 ` Paul Jackson
2005-04-09 16:16 ` Linus Torvalds
2005-04-09 17:15 ` Paul Jackson
2005-04-09 17:35 ` Paul Jackson
2005-04-09 1:04 ` Marcin Dalecki
2005-04-09 15:42 ` Paul Jackson
2005-04-09 18:45 ` Marcin Dalecki
2005-04-09 1:00 ` Marcin Dalecki
2005-04-09 1:09 ` Chris Wedgwood
2005-04-09 1:21 ` Marcin Dalecki
2005-04-08 7:17 ` ross
2005-04-08 15:50 ` Linus Torvalds
2005-04-09 2:53 ` Petr Baudis
2005-04-09 7:08 ` Randy.Dunlap
2005-04-09 18:06 ` [PATCH] " Petr Baudis
2005-04-10 1:01 ` Phillip Lougher
2005-04-10 1:42 ` Petr Baudis
2005-04-10 1:57 ` Phillip Lougher
2005-04-09 15:50 ` Paul Jackson
2005-04-09 16:26 ` Linus Torvalds
2005-04-09 17:08 ` Paul Jackson
2005-04-10 3:41 ` Paul Jackson
2005-04-10 8:39 ` David Lang
2005-04-10 9:40 ` Junio C Hamano
2005-04-10 16:46 ` Bill Davidsen
2005-04-10 17:50 ` Paul Jackson
2005-04-12 23:20 ` Pavel Machek
2005-04-08 7:34 ` Marcel Lanz
2005-04-08 9:23 ` Geert Uytterhoeven [this message]
2005-04-08 8:38 ` Matt Johnston
2005-04-12 7:14 ` Kernel SCM saga.. (bk license?) Kedar Sovani
2005-04-12 9:34 ` Catalin Marinas
2005-04-13 4:04 ` Ricky Beam
2005-04-08 11:42 ` Kernel SCM saga Catalin Marinas
[not found] <Pine.LNX.4.58.0504060800280.2215 () ppc970 ! osdl ! org>
2005-04-06 21:13 ` kfogel
2005-04-06 22:39 ` Jeff Garzik
2005-04-09 1:00 ` Marcin Dalecki
2005-04-08 22:27 Rajesh Venkatasubramanian
2005-04-08 23:29 ` Linus Torvalds
2005-04-09 0:29 ` Linus Torvalds
2005-04-09 16:20 ` Paul Jackson
2005-04-09 4:06 Walter Landry
2005-04-09 11:02 Samium Gromoff
2005-04-09 11:29 Samium Gromoff
2005-04-10 4:20 Albert Cahalan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.62.0504081119050.29212@anakin \
--to=geert@linux-m68k.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).