Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 127723 - fontforge-20050624 access violation (with lilypond-2.8.0)
Summary: fontforge-20050624 access violation (with lilypond-2.8.0)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Fonts Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 125752
  Show dependency tree
 
Reported: 2006-03-27 02:01 UTC by Thomas Holder
Modified: 2006-04-09 10:46 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
fontforge-20060125-respect-HOME.patch (fontforge-20060125-respect-HOME.patch,1.39 KB, patch)
2006-04-07 21:14 UTC, SpanKY
Details | Diff
fontforge-20060406-respect-HOME.patch (fontforge-20060406-respect-HOME.patch,2.33 KB, patch)
2006-04-07 21:36 UTC, SpanKY
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Holder 2006-03-27 02:01:51 UTC
this bug report is forked from bug 97574

when emerging lilypond, I (sometimes) get this error:

------------------------- ACCESS VIOLATION SUMMARY -------------------------
LOG FILE = "/var/log/sandbox/sandbox-media-sound_-_lilypond-2.8.0-18165.log"

mkdir:     /root/.PfaEdit
----------------------------------------------------------------------------

The problem is the way fontforge detects homedir. It does evaluate /etc/passwd rather than $HOME. $HOME is /var/tmp/portage/homedir/ inside ebuilds, but fontforge wants to write to /root/! The following patch for fontforge-20050624 solved the issue for me:

--- fontforge/autosave.c.orig   2006-03-27 09:10:53.000000000 +0200
+++ fontforge/autosave.c        2006-03-27 09:52:33.000000000 +0200
@@ -48,7 +48,7 @@
 # include <pwd.h>
 
 static char *gethomedir(void) {
-    static char *dir=NULL;
+    char *dir=getenv("HOME");
     int uid;
     struct passwd *pw;
 
@@ -65,9 +65,6 @@
     }
     endpwent();
 
-    if ( (dir=getenv("HOME"))!=NULL )
-return( (dir=strdup(dir)) );
-
 return( NULL );
 }
 #endif
Comment 1 Thomas Holder 2006-03-27 02:40:21 UTC
the patch also applies to fontforge-20060209 (see bug 125752)
Comment 2 Michael Kiermaier 2006-03-27 10:27:17 UTC
Same problem here:

make[2]: Leaving directory `/var/tmp/portage/lilypond-2.8.0-r1/work/lilypond-2.8.0/Documentation/misc'
make[2]: Entering directory `/var/tmp/portage/lilypond-2.8.0-r1/work/lilypond-2.8.0/Documentation/misc'
true
make[2]: Leaving directory `/var/tmp/portage/lilypond-2.8.0-r1/work/lilypond-2.8.0/Documentation/misc'
make[1]: Leaving directory `/var/tmp/portage/lilypond-2.8.0-r1/work/lilypond-2.8.0/Documentation'
--------------------------- ACCESS VIOLATION SUMMARY ---------------------------
LOG FILE = "/var/log/sandbox/sandbox-media-sound_-_lilypond-2.8.0-r1-28690.log"

mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
mkdir:     /root/.PfaEdit
--------------------------------------------------------------------------------


# emerge info
Portage 2.0.54 (default-linux/x86/2005.0, gcc-3.3.6, glibc-2.3.5-r2, 2.6.15-gentoo-r1 i686)
=================================================================
System uname: 2.6.15-gentoo-r1 i686 AMD Athlon(tm)  3200+
Gentoo Base System version 1.6.14
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python:     2.2.2, 2.3.5, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.4.3-r4, 1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -O2 -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=athlon-xp -O2 -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://gentoo.oregonstate.edu/ http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="de_DE.utf8"
LC_ALL="de_DE.utf8"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 3dnow 3dnowext X Xaw3d aac aalib alsa amarok apache2 apm arts audiofile avi bash-completion berkdb bitmap-fonts blas bzip2 bzlib caps cdparanoia cdr crypt css cups curl divx4linux dri dvd eds encode exif expat fam ffmpeg flac font-server fortran gcj gd gdbm gif glut gmp gphoto2 gpm gstreamer gtk2 gtkhtml guile hal icq idn imagemagick imlib innodb ipv6 jack jack-tmpfs java jce jpeg junit kde kdeenablefinal kdexdeltas ladcca ladspa lapack lcms libcaca libg++ libwww live lzo mad maildir matroska matrox mhash mikmod mmx mng monkey motif mp3 mpeg musicbrainz mysql ncurses nls nptl nptlonly nsplugin objc ogg oggvorbis openal opengl oss pam pcre pdflib perl pic png portaudio povray python qt quicktime readline real samba sasl sdl slang sndfile soundtouch speex spell sse ssl svg svga tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts udev unicode usb vim vim-with-x visualization vorbis win32codecs wmf xine xinerama xml xml2 xmms xv xvid xvmc zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LDFLAGS, LINGUAS
Comment 3 SpanKY gentoo-dev 2006-04-07 21:14:22 UTC
Created attachment 84186 [details, diff]
fontforge-20060125-respect-HOME.patch

looks like that isnt the only bug in the code ... bunch of ugly memleaks as well

ive sent this stuff upstream
Comment 4 SpanKY gentoo-dev 2006-04-07 21:36:08 UTC
Created attachment 84188 [details, diff]
fontforge-20060406-respect-HOME.patch
Comment 5 SpanKY gentoo-dev 2006-04-07 22:38:01 UTC
ok, upstream has accepted this patch into their repo so using it in the 20060406 ebuild should be fine
Comment 6 SpanKY gentoo-dev 2006-04-09 10:46:17 UTC
fontforge-20060406 now in portage, thanks for the report