git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Trying to get GIT running on SCO OpenServer

From
Aidan Van Dyk <aidan@highrise.ca>
Date
Jan 24, 2008, 16:23 UTC
Message-ID
<20080124162338.GC17244@yugib.highrise.ca>
In-Reply-To
<20080123212613.GN2230@yugib.highrise.ca>
OK, piling hack upon hack to get things to work, I've got 4 tests that
don't pass:
	-rwxr-xr-x 1 aidan group  5733 Jan 23 20:57 t/t5302-pack-index.sh
	-rwxr-xr-x 1 aidan group  4204 Dec  4 15:21 t/t5400-send-pack.sh
	-rwxr-xr-x 1 aidan group  4321 Dec  4 15:21 t/t7003-filter-branch.sh
	-rwxr-xr-x 1 aidan group 16846 Jan 23 20:57 t/t9500-gitweb-standalone-no-errors.sh
git-pack-objects is segfaulting:
	~/software/git.git/t/trash$ git-pack-objects test < obj-list
	Counting objects: 102, done.
	Compressing objects: 100% (101/101), done.
	Segmentation Fault
Stack trace:
	SIGNALED 11 (segv code[SEGV_MAPERR] address[0xbff68008]) in p1
	184:    <no source text available>
	debug> stack
	Stack Trace for p1, Program git-pack-objec
	*[0] find_packed_object(presumed: 0, 0, 0xc)    [�\@builtin-pack-objects.c@184]
	 [1] write_one(presumed: 0xc, 0, 0)     [�\@builtin-pack-objects.c@512]
	 [2] write_pack_file(presumed: 0x8049364, 0, 0) [�\@builtin-pack-objects.c@628]
	 [3] cmd_pack_objects() [�\@builtin-pack-objects.c@2245]
Before I dig too deeply, does that look familiar to anyone?
Just FYI, my current stack of hacks is:
	HACK: BROKEN_FOPEN
	HACK: BROKEN_VSNPRINTF
	HACK: strtoul
	NO_RSYNC to avoid mkdtemp
An interesting one is the strtoul HACK:
	diff --git a/builtin-unpack-objects.c b/builtin-unpack-objects.c
	index 1e51865..2c2e187 100644
	--- a/builtin-unpack-objects.c
	+++ b/builtin-unpack-objects.c
	@@ -368,7 +368,11 @@ int cmd_unpack_objects(int argc, const char **argv, const char *prefix)
					hdr->hdr_version = htonl(strtoul(arg + 14, &c, 10));
					if (*c != ',')
						die("bad %s", arg);
	-                               hdr->hdr_entries = htonl(strtoul(c + 1, &c, 10));
	+{      /* Another ugly SCO hack */
	+char*d;
	+                               hdr->hdr_entries = htonl(strtoul(c + 1, &d, 10));
	+c = d;
	+}
					if (*c)
						die("bad %s", arg);
					len = sizeof(*hdr);

Is this just a *completely* broken compiler? With out this hack, "c" is set to something farther ahead then the null at the end of the "--pack-objects=2,10", and the if (*c) test obviously fails (and the value read by the strtoul isn't correct either).

I've verified that the c *is* ",10" before entering that line... and I can't see any reason why that wouldn't "just work", but hey, this is SCO.

a.
-- 
Aidan Van Dyk                                             Create like a god,
aidan@highrise.ca                                       command like a king,
http://www.highrise.ca/                                   work like a slave.
Previous: Linus Torvalds
Message 10 of 10 in “Trying to get GIT running on SCO OpenServer”
  1. Aidan Van DykJan 23, 2008
  2. Johannes SchindelinJan 23, 2008
  3. Jakub NarebskiJan 24, 2008
  4. Junio C HamanoJan 24, 2008
  5. H. Peter AnvinJan 24, 2008
  6. Junio C HamanoJan 24, 2008
  7. Linus TorvaldsJan 24, 2008
  8. Luke LuJan 24, 2008
  9. Linus TorvaldsJan 24, 2008
  10. Aidan Van DykJan 24, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.