Date: Sun, 1 Nov 1998 03:00:01 -0800 (PST) From: Joachim Kuebart <joki@kuebart.stuttgart.netsurf.de> To: freebsd-bugs@FreeBSD.ORG Subject: Re: kern/5038: FreeBSD can't read MS Joliet CDs. Message-ID: <199811011100.DAA23504@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/5038; it has been noted by GNATS.
From: Joachim Kuebart <joki@kuebart.stuttgart.netsurf.de>
To: lxv@nest.org
Cc: freebsd-gnats-submit@freebsd.org, joki@kuebart.stuttgart.netsurf.de
Subject: Re: kern/5038: FreeBSD can't read MS Joliet CDs.
Date: Sun, 1 Nov 1998 11:52:48 +0100 (CET)
Alex Vasylenko wrote:
> hi,
>
> below is a diff from -stable (as of 10/30) sources to support Joliet
> extensions to cd9660 filesystem (author Joachim Kuebart
> <joki@kuebart.stuttgart.netsurf.de>) ...
>
> --Alex.
>
>
> ===== ~/s/src/sys/isofs/cd9660
> diff -u orig/cd9660_rrip.c ./cd9660_rrip.c
> --- orig/cd9660_rrip.c Sun Aug 17 06:28:37 1997
> +++ ./cd9660_rrip.c Fri Oct 30 23:48:14 1998
> @@ -516,12 +518,11 @@
> * it will be padding 1 byte after the name
> */
> pwhead = isodir->name + isonum_711(isodir->name_len);
> - if (!(isonum_711(isodir->name_len)&1))
> - pwhead++;
> + isochar(isodir->name, pwhead, ana->imp->joliet_level, &c);
> + pwhead += isonum_711(isodir->name_len) & 1;
>
> /* If it's not the '.' entry of the root dir obey SP field */
> - if (*isodir->name != 0
> - || isonum_733(isodir->extent) != ana->imp->root_extent)
> + if (c != 0 || isonum_733(isodir->extent) != ana->imp->root_extent)
> pwhead += ana->imp->rr_skip;
> else
> pwhead += ana->imp->rr_skip0;
This patch broke RRIP for me. It should be:
===== ~/s/src/sys/isofs/cd9660
diff -u orig/cd9660_rrip.c ./cd9660_rrip.c
--- orig/cd9660_rrip.c Sun Aug 17 06:28:37 1997
+++ ./cd9660_rrip.c Fri Oct 30 23:48:14 1998
@@ -518,10 +520,10 @@
pwhead = isodir->name + isonum_711(isodir->name_len);
if (!(isonum_711(isodir->name_len)&1))
pwhead++;
+ isochar(isodir->name, pwhead, ana->imp->joliet_level, &c);
/* If it's not the '.' entry of the root dir obey SP field */
- if (*isodir->name != 0
- || isonum_733(isodir->extent) != ana->imp->root_extent)
+ if (c != 0 || isonum_733(isodir->extent) != ana->imp->root_extent)
pwhead += ana->imp->rr_skip;
else
pwhead += ana->imp->rr_skip0;
I'm sorry I forgot to submit a follow-up when I noticed that. This
applies to the -current patch as well, of course.
cu Jo
---------------------------------------------------------------------
Pray that there's intelligent life Joachim Kuebart
Somewhere up in space Stuttgart, Germany
'Cause there's bugger all down here on earth.
--- Monty Python
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199811011100.DAA23504>
