When working with the template dialog (File | New | Templates and Documents) as a non-priveleged user, clicking on any folder or file in the middle box causes OO to segfault. This happens when running OpenOffice as a non-priveleged user, but not when running as root. I've renamed ~/.ooo-2.0 and the old .openoffice directory, which doesn't help, so this must be some sort of permissions issue. This doesn't happen with the normal file list dialog (File | Open). For what it's worth ..... $ emerge info Portage 2.0.51.22-r3 (default-linux/x86/2005.0, gcc-3.3.6, glibc-2.3.4.20040808-r1,glibc-2.3.5-r2, 2.6.13-gentoo-r3 i686) ================================================================= System uname: 2.6.13-gentoo-r3 i686 Intel(R) Pentium(R) 4 CPU 2.60GHz Gentoo Base System version 1.6.13 ccache version 2.3 [disabled] dev-lang/python: 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.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -mcpu=pentium4 -march=pentium4 -fprefetch-loop-arrays -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /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/lib/mozilla/defaults/pref /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/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -mcpu=pentium4 -march=pentium4 -fprefetch-loop-arrays -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.chem.wisc.edu/gentoo http://cudlug.cudenver.edu/gentoo ftp://ftp.ussg.iu.edu/pub/linux/gentoo" LANG="en" LC_ALL="en_US" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X Xaw3d acl acpi alsa apache2 apm arts audiofile avi berkdb bindist bitmap-fonts bonobo bzip2 cdr crypt cups curl doc dvd dvdr eds emboss encode esd evo exif expat fam fastcgi ffmpeg flac flash foomaticdb fortran gd gdbm gif glut gnome gpm gps gstreamer gtk gtk2 gtkhtml guile hal idn imagemagick imap imlib ipv6 jack java jikes jpeg junit lcms ldap libg++ libwww mad maildir mcal mhash mikmod ming mng motif mozilla mp3 mpeg mysql nas ncurses nls ogg oggvorbis opengl oss pam pcre pdflib perl plotutils png ppds python quicktime readline recode samba sasl scanner sdl slang slp snmp spell sse ssl svga tcltk tcpd tetex tiff truetype truetype-fonts type1-fonts udev usb vorbis xine xml xml2 xmms xosd xv xvid zeo zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LDFLAGS, LINGUAS
Here's strace output on the crash: ioctl(6, FIONREAD, [32]) = 0 read(6, "o\2\247\34\271/|)\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0"..., 32) = 32 write(6, "\226\4\2\0\0\1@\3", 8) = 8 read(6, "\1\0\250\34\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1"..., 32) = 32 ioctl(6, FIONREAD, [0]) = 0 gettimeofday({1135463137, 19238}, NULL) = 0 poll([{fd=7, events=POLLIN}, {fd=6, events=POLLIN, revents=POLLIN}, {fd=13, events=POLLIN|POLLPRI}, {fd=15, events=POLLIN|POLLPRI}, {fd=16, events=POLLIN|POLLPRI}, {fd=17, events=POLLIN|POLLPRI}, {fd=23, events=POLLIN}], 7, 31) = 1 ioctl(6, FIONREAD, [32]) = 0 read(6, "\4\1\250\34\271/|)r\0\0\0^\2@\3\0\0\0\0001\2:\2\202\0\21"..., 32) = 32 write(6, "\22\0\7\0^\2@\3\376\0\0\0\6\0\0\0 \0\2\0\1\0\0\0\271/|"..., 36) = 36 gettimeofday({1135463137, 21199}, NULL) = 0 write(6, "\32\0\6\0^\2@\3\314\0\1\1\0\0\0\0\222\0@\3\0\0\0\0", 24) = 24 read(6, "\34g\251\34^\2@\3\376\0\0\0\275/|)\0\0\0\0\275/|)\210g"..., 32) = 32 read(6, "\1\0\253\34\0\0\0\0\0\20\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 32) = 32 write(6, ";\3\5\0\26\3@\3\0\0\0\0v\0>\0*\1\27\1F\0\v\0^\2@\3\26\3"..., 136) = 136 read(6, 0xbff7cc60, 32) = -1 EAGAIN (Resource temporarily unavailable) select(7, [6], NULL, NULL, NULL) = 1 (in [6]) read(6, "\1\0\261\34\3\0\0\0!\0\0\0\1\0\1\n\377\377\377\377\0\0"..., 32) = 32 read(6, "\377\200\343\0\377\200c\0\0\0E\10", 12) = 12 read(6, "\1\20\262\34\0\0\0\0r\0\0\0\5\0\26\0\330\2\223\1\0\0\0"..., 32) = 32 write(6, "5\20\4\0\344\3@\3^\2@\3\20\0\20\0007\1\4\0\345\3@\3\344"..., 88) = 88 read(6, 0xbff7cd40, 32) = -1 EAGAIN (Resource temporarily unavailable) select(7, [6], NULL, NULL, NULL) = 1 (in [6]) read(6, "\16\1\265\34\344\3@\3\0\0>\0\0\0\0\0\0\0\0\0^\2@\3\230"..., 32) = 32 read(6, "\1\20\267\34\200\0\0\0\0\0\0\0\37\333\f\10`\345J\10\345"..., 32) = 32 readv(6, [{"PKPKPKPKPKPKPKPKPKPKPKPKPKPKPKPK"..., 512}, {"", 0}], 2) = 512 ioctl(6, FIONREAD, [0]) = 0 write(6, "6\20\2\0\344\3@\3;\3\5\0\225\2@\3\0\0\0\0v\0>\0*\1\27\001"..., 632) = 632 ioctl(6, FIONREAD, [0]) = 0 poll([{fd=6, events=POLLIN, revents=POLLIN}], 1, 1000) = 1 ioctl(6, FIONREAD, [32]) = 0 read(6, "\16\0\276\34^\2@\3\0\0>\0x\0\0\0\n\1\0\0\346\3@\3\230g"..., 32) = 32 gettimeofday({1135463137, 23982}, NULL) = 0 gettimeofday({1135463137, 24055}, NULL) = 0 gettimeofday({1135463137, 24121}, NULL) = 0 gettid() = 32509 mmap2(0xbfd83000, 40960, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xbfd83000 sigaltstack({ss_sp=0xbfd83000, ss_flags=0, ss_size=40960}, NULL) = 0 rt_sigaction(SIGHUP, NULL, {0xb6c3965e, ~[KILL STOP], SA_RESTART|SA_SIGINFO}, 8) = 0 rt_sigaction(SIGINT, NULL, {0xb6c3965e, ~[KILL STOP], SA_RESTART|SA_SIGINFO}, 8) = 0 rt_sigaction(SIGTERM, NULL, {0xb6c3965e, ~[KILL STOP], SA_RESTART|SA_SIGINFO}, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [HUP INT QUIT USR2 TERM CHLD], NULL, 8) = 0 mmap2(0xbfd8d000, 12288, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xbfd8d000 mprotect(0xbfd8d000, 12288, PROT_NONE) = 0 gettimeofday({1135463137, 25142}, NULL) = 0 rt_sigprocmask(SIG_SETMASK, NULL, [RTMIN], 8) = 0 write(19, "\300\230\t\10\0\0\0\0\224\313\367\277\20\355\262\262\330"..., 148) = 148 rt_sigprocmask(SIG_SETMASK, NULL, [RTMIN], 8) = 0 rt_sigsuspend([] <unfinished ...> --- SIGRTMIN (Unknown signal 32) @ 0 (0) --- <... rt_sigsuspend resumed> ) = -1 EINTR (Interrupted system call) sigreturn() = ? (mask now [RTMIN]) kill(32533, SIGRTMIN) = 0 rt_sigprocmask(SIG_SETMASK, NULL, [RTMIN], 8) = 0 rt_sigsuspend([] <unfinished ...> --- SIGRTMIN (Unknown signal 32) @ 0 (0) --- <... rt_sigsuspend resumed> ) = -1 EINTR (Interrupted system call) sigreturn() = ? (mask now [RTMIN]) rt_sigprocmask(SIG_SETMASK, NULL, [RTMIN], 8) = 0 write(19, "\300\230\t\10\0\0\0\0\20\314\367\277\20\355\262\262($\27"..., 148) = 148 rt_sigprocmask(SIG_SETMASK, NULL, [RTMIN], 8) = 0 rt_sigsuspend([] <unfinished ...> --- SIGRTMIN (Unknown signal 32) @ 0 (0) --- <... rt_sigsuspend resumed> ) = -1 EINTR (Interrupted system call) sigreturn() = ? (mask now [RTMIN]) kill(32534, SIGRTMIN) = 0 mmap2(0xbfd8d000, 12288, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0xbfd8d000 --- SIGFPE (Floating point exception) @ 0 (0) --- rt_sigaction(SIGFPE, {0xb6c3965e, ~[], SA_RESTART|SA_SIGINFO}, {0xb6c3965e, ~[KILL STOP], SA_RESTART|SA_SIGINFO}, 8) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++
If I open a fresh, nonpriv user account and run OO from said account, this does _not_ happen, so something in my existing desktop setup or file structure is causing this problem. in OO 1.1.x I developed and used a number of templates with no problems.
Looks like a problem in your setup, as you pointed out yourself. So not a lot we can do here. Maybe this is a permission problem? Do you have a dir in your templates path, which is not accessible? Still it shouldn't crash in such a case...
Works here, can't reproduce, works for other, so closing
The problem appears to have been transient. Although it was reproducable when I reported it, it's no longer so. Your closure is appropriate. Thanks!