[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: New Quik available



Adam C Powell IV wrote:

> Daniel Jacobowitz wrote:
>
> > I've put an NMU of Quik 2.0e with patches in Incoming - with luck and
> > archive maintainers it will be available soon.
> >
> > I'd appreciate feedback on it.  Also, in the postinst is some commented
> > out PReP work - is it relevant?  If so could someone with more PReP
> > knowledge than I complete it?
>
> Thank you for the new quik.  Unfortunately, it still segfaulted for me, this has
> been a problem for some time.

Okay, I don't know what I was thinking with that long rambling post yesterday.  Must have been tired, sorry.

Anyway, the attached patch does indeed fix the segfault and resolve_to_dev() in general, a bit ugly but that whole subroutine is a bit ugly so I don't feel so bad. :-)

However, with or without it, booting fails as follows:

Second-stage QUIK loader
Booting Debian GNU/Linux (Potato)
boot: linux

Fatal error: Unable to open filesystem

Image not found.... try again
boot:

Once again, 2.0-2 worked where this does not.  I've attached quik.conf.

Thanks again,

-Adam P.

--- quik/quik.c.bak	Wed Apr  5 10:12:37 2000
+++ quik/quik.c	Wed Apr  5 10:12:49 2000
@@ -381,18 +381,22 @@
 	    return q;
 	}
 	if (S_ISLNK(st3.st_mode)) {
-	    len = readlink(buffer, readlinkbuf, 2048);
+	    len = readlink(buffer, readlinkbuf+1, 2047);
 	    if (len < 0)
 		fatal ("Couldn't readlink %s\n", fn);
-	    readlinkbuf[len] = 0;
-	    if (*readlinkbuf == '/') {
+	    readlinkbuf[len+1] = 0;
+	    if (*(readlinkbuf+1) == '/') {
+		b = r = readlinkbuf+1;
+	    } else if (p == buffer + 1) {
+		*readlinkbuf = '/';
 		b = r = readlinkbuf;
+		len++;
 	    } else {
 		b = buffer2;
 		strcpy (b, buffer);
 		r = strchr(b, 0);
 		*r++ = '/';
-		strcpy(r, readlinkbuf);
+		strcpy(r, readlinkbuf+1);
 	    }
 	    if (c) {
 		r += len;
init-message = "Booting Debian GNU/Linux (Potato)\n"
root=/dev/hdb6
timeout = 0

image = /boot/vmlinux-2.2.15pre16-atydbg
	append = "adb_buttons=58:52"
	label = offb

image = /boot/vmlinux-2.2.15pre16-atydbg
	append = "video=atyfb:vmode:18,cmode:8,font:SUN12x22 adb_buttons=58:52"
	label = linux

image = /boot/vmlinux-2.2.15pre16
	append = "video=atyfb:vmode:18,cmode:8,font:SUN12x22 adb_buttons=58:52"
	label = oldlinux
	alias = l

image = "$bye"
	label = bye

Reply to: