On Mon, Dec 09, 2013 at 12:24:52AM +0100, Guillem Jover wrote:
> Control: tags -1 unreproducible moreinfo
> 
> Hi!
> 
> On Sun, 2013-12-08 at 22:25:35 +0100, Guillem Jover wrote:
> > On Sun, 2013-12-08 at 21:39:01 +0100, Julian Andres Klode wrote:
> > > update-alternative crashes when creating the alternatives for
> > > epiphany-browser, causing epiphany-browser to not be configured,
> > > thus breaking it, and probably other software as well.
> > > 
> > > The part of the postinst causing the seg fault is:
> > > 
> > > PRIO=85
> > > for alt in x-www-browser gnome-www-browser; do
> > >     update-alternatives --install \
> > >         /usr/bin/$alt $alt /usr/bin/epiphany-browser $PRIO \
> > >             --slave /usr/share/man/man1/$alt.1.gz $alt.1.gz 
> > > /usr/share/man/man1/epiphany-browser.1.gz
> > > done
> > > 
> > > Maybe you can reproduce this yourself in a debug build, otherwise
> > > I'll do a debug build myself and try to reproduce it with debugging
> > > symbols.
> 
> > Well it does not trigger on the test suite, anyway looking into it now.
> 
> I've tried your recipe, and installing the epiphany-browser package,
> neither segfault. And I've re-reviewed the changes in u-a between
> 1.17.1 and 1.17.4, and nothing obvious jumps to me. Could you attach
> your /var/lib/dpkg/alternatives/ and /etc/alternatives/ directories and
> to where do the x-www-browser and gnome-www-browser generic names point
> to currently in your file system? (Those would be the /usr/bin/$alt and
> /usr/share/man/man1/$alt.1.gz links.)

The command failing is:
update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser 
/usr/bin/epiphany-browser 85 --slave /usr/share/man/man1/gnome-www-browser.1.gz 
gnome-www-browser.1.gz /usr/share/man/man1/epiphany-browser.1.gz

$ ls -l /usr/share/man/man1/gnome-www-browser* /usr/bin/gnome-www-browser 
ls: cannot access /usr/share/man/man1/gnome-www-browser*: No such file or 
directory
lrwxrwxrwx 1 root root 35 Sep  7 10:53 /usr/bin/gnome-www-browser -> 
/etc/alternatives/gnome-www-browser

I believe the missing man page link is the problem.

Here's a backtrace for the failing command:

Program received signal SIGSEGV, Segmentation fault.
#0  0x0000000000403657 in alternative_copy_slave (a=0x60f0d0, sl=0x60f2e0) at 
../../utils/update-alternatives.c:992
        sl_new = 0x0
#1  0x00000000004070ed in alternative_evolve (a=0x60f0d0, b=0x60f140, 
cur_choice=0x63d4f0 "/usr/bin/chromium", fs=0x60f1e0) at 
../../utils/update-alternatives.c:2310
        sl = 0x60f2e0
        is_link = true
#2  0x00000000004090d3 in main (argc=10, argv=0x7fffffffe0a8) at 
../../utils/update-alternatives.c:2783
        a = 0x60f0d0
        inst_alt = 0x60f140
        fileset = 0x60f1e0
        path = 0x0
        current_choice = 0x63d4f0 "/usr/bin/chromium"
        new_choice = 0x0
        i = 10
rax            0x0      0
rbx            0x706140 7364928
rcx            0x7ffff7dd5640   140737351865920
rdx            0x1      1
rsi            0x51     81
rdi            0x0      0
rbp            0x7fffffffdeb0   0x7fffffffdeb0
rsp            0x7fffffffde80   0x7fffffffde80
r8             0x0      0
r9             0x3      3
r10            0x411    1041
r11            0x246    582
r12            0x401510 4199696
r13            0x7fffffffe0a0   140737488347296
r14            0x0      0
r15            0x0      0
rip            0x403657 0x403657 <alternative_copy_slave+89>
eflags         0x10246  [ PF ZF IF RF ]
cs             0x33     51
ss             0x2b     43
ds             0x0      0
es             0x0      0
fs             0x0      0
gs             0x0      0

Thread 1 (process 30421):
#0  0x0000000000403657 in alternative_copy_slave (a=0x60f0d0, sl=0x60f2e0) at 
../../utils/update-alternatives.c:992
#1  0x00000000004070ed in alternative_evolve (a=0x60f0d0, b=0x60f140, 
cur_choice=0x63d4f0 "/usr/bin/chromium", fs=0x60f1e0) at 
../../utils/update-alternatives.c:2310
#2  0x00000000004090d3 in main (argc=10, argv=0x7fffffffe0a8) at 
../../utils/update-alternatives.c:2783
A debugging session is active.

        Inferior 1 [process 30421] will be killed.

Quit anyway? (y or n) [answered Y; input not from terminal]

> 
> Thanks,
> Guillem

-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.

Please do not top-post if possible.


-- 
To UNSUBSCRIBE, email to debian-dpkg-bugs-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to