>De: Michael henn <[email protected]> >Para: Juanjo Marín <[email protected]> >Enviado: sábado 2 de julio de 2011 20:56 >Asunto: Re: [evince] problems with specific filename > [...] > >Hey Juanjo, >thank you for your reply, >let's come right to business: > >$ cat /etc/issue >Ubuntu 10.10 \n \l > > >$ uname -a >Linux michi-laptop 2.6.35-30-generic #54-Ubuntu SMP Tue Jun 7 18:40:23 >UTC 2011 i686 GNU/Linux >$ evince --version >GNOME Dokumentenbetrachter 2.32.0 >$ strace -f evince .bashthis 2>&1 | grep bashthis >execve("/usr/bin/evince", ["evince", ".bashthis"], [/* 46 vars */]) = 0 >[pid 2239] lstat64("/home/michi/.bashthis", {st_mode=S_IFREG|0644, >st_size=17674, ...}) = 0 >[pid 2246] lstat64("/home/michi/.bashthis", {st_mode=S_IFREG|0644, >st_size=17674, ...}) = 0 >[pid 2246] open("/home/michi/.bashthis", O_RDONLY|O_LARGEFILE) = -1 >EACCES (Permission denied) >[pid 2246] open("/home/michi/.bashthis", O_RDONLY|O_LARGEFILE) = -1 >EACCES (Permission denied) >[pid 2241] lstat64("/home/michi/.bashthis", <unfinished ...> >$ strace -f gv .bashthis 2>&1 | grep bashthis >execve("/usr/bin/gv", ["gv", ".bashthis"], [/* 46 vars */]) = 0 >stat64(".bashthis", {st_mode=S_IFREG|0644, st_size=17674, ...}) = 0 >lstat64("/home/michi/.bashthis", {st_mode=S_IFREG|0644, st_size=17674, >...}) = 0 >stat64("/home/michi/.bashthis", {st_mode=S_IFREG|0644, st_size=17674, >...}) = 0 >open("/home/michi/.bashthis", O_RDONLY|O_LARGEFILE) = 4 >stat64("/home/michi/.bashthis", {st_mode=S_IFREG|0644, st_size=17674, >...}) = 0 >[pid 2253] stat64("/home/michi/.bashthis", {st_mode=S_IFREG|0644, >st_size=17674, ...}) = 0 > >So the open-call from evince fails with EACCES and the open-call from gv >works ... isn't that strange? > > >Also i wrote this minimal C-program: >--------------------------------------- >#define _LARGEFILE64_SOURCE >#include <fcntl.h> >#include <stdio.h> > >int main() { > int fd = open("/home/michi/.bashthis", O_RDONLY|O_LARGEFILE); > if(fd == -1) { > perror("open failed"); > } > printf("open returned %d\n", fd); > return 0; >} >--------------------------------------- > >$ gcc -Wall -o test/testevince.out test/testevince.c >$ strace -f test/testevince.out 2>&1 | grep bashthis >open("/home/michi/.bashthis", O_RDONLY|O_LARGEFILE) = 3 >$ test/testevince.out >open returned 3 >$ mv .bashthis bashthis >$ evince bashthis >$ > >I am pretty clueless. I'm also thankful for any hints how i can find out >about this problem myself - i'm just interested. >
Michael, I _think_ this behaviour has something to do with the apparmor wrapper added in the patches applied to Evince by Ubuntu [1]. Evince tries to open, so it clearly seems to me the bug is outside. Try to execute Evince with apparmor disabled [3]. After this, if Evince works, open a bug in launchpad for the Ubuntu folks, if not, let me know :-) Cheers, -- Juanjo Marin [1] https://launchpad.net/ubuntu/+archive/primary/+files/evince_2.32.0-0ubuntu12.debian.tar.gz [2] https://wiki.ubuntu.com/AppArmor [3] https://help.ubuntu.com/community/AppArmor _______________________________________________ evince-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/evince-list
