Portál AbcLinuxu, 14. srpna 2025 08:12


Dotaz: Co ma spolecneho unrar a Type1 font?

26.4.2005 18:52 petr_p
Co ma spolecneho unrar a Type1 font?
Přečteno: 120×
Odpovědět | Admin
DD,

nevim, jestli mam halucinace nebo mi strasi v pocitaci, ale nebudu klidne spat, dokud mi nekdo tohle nevysvetli:

Vsimnul jsem si, ze utilitka unrar ma pri praci otevreny soubor, s kterym by nemela mit nic spolecneho. Konkretne spustim:
petr@album:/tmp> /tmp/unrar/unrar t /tmp/films/.stream 

UNRAR 3.50 beta 1 freeware      Copyright (c) 1993-2005 Alexander Roshal
kde /tmp/unrar/unrar je posledni verze unraru a soubor /tmp/films/.stream je pojmenovana roura, kterou zadny jiny proces nema otevrenou.

A vysledkem jsou otvrene 2 Type1 soubory:
petr@album:~> lsof -p `pidof unrar` |tail -4
unrar   4517 petr    1u   CHR  136,2               4 /dev/pts/2
unrar   4517 petr    2u   CHR  136,2               4 /dev/pts/2
unrar   4517 petr    4r   REG    3,5   68590 2061003 /usr/local/share/ghostscript/fonts/n019003l.pfb
unrar   4517 petr    5r   REG    3,5   72400 2061007 /usr/local/share/ghostscript/fonts/n019004l.pfb
Pokud pouziji distribucni verzi unraru, tak je otevren jen soubor na 4. deskriptoru. Jinak pri kazdem spousteni jsou otevreny ty same Type1 soubory.

Co je ale zajimave, ze kdyz program odtracuju, tak nikde tento soubor neni neotviran, ani duplikovan jeho deskriptor.

Ve zdrojacich jsem nic podezreleho nenasel, cestu k temto Type1 souborum zna pouze ghostscript a X Server. Tak nevim, jak je unrar nebo knihovna proti ktere je slinkovan
petr@album:/tmp> ldd /tmp/unrar/unrar 
        linux-gate.so.1 =>  (0xffffe000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x4002a000)
        libm.so.6 => /lib/tls/libm.so.6 (0x400e6000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40108000)
        libc.so.6 => /lib/tls/libc.so.6 (0x40110000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
nebo kterou by jinak pouzival (strace -edlopen nic nevrati), najde.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.4.2005 21:42 ViT
Rozbalit Rozbalit vše Re: Co ma spolecneho unrar a Type1 font?
Odpovědět | | Sbalit | Link | Blokovat | Admin
docela by me zajimalo co se stane kdyz ty dva soubory na chvili presunes nekam jinam aby o nich nevedel zadnej program (pak je samozrejme vrat zpatky :-)) jestli to hodi nejakou chybovou hlasku ... nebo neco takovyho?
27.4.2005 00:08 petr_p
Rozbalit Rozbalit vše Re: Co ma spolecneho unrar a Type1 font?
To je neskutecne. Presnunul jsem je
album:/usr/local/share/ghostscript/fonts # mkdir moved
album:/usr/local/share/ghostscript/fonts # mv n019003l.pfb n019004l.pfb moved/
album:/usr/local/share/ghostscript/fonts # ls moved/
.  ..  n019003l.pfb  n019004l.pfb
a on si je zase nasel (pritom zadny xset jsem nepouzil):
petr@album:/tmp/unrar> lsof -p `pidof unrar` |tail -4
unrar   6116 petr    1u   CHR  136,2               4 /dev/pts/2
unrar   6116 petr    2u   CHR  136,2               4 /dev/pts/2
unrar   6116 petr    4r   REG    3,5   68590 2061003 /usr/local/share/ghostscript/fonts/moved/n019003l.pfb
unrar   6116 petr    5r   REG    3,5   72400 2061007 /usr/local/share/ghostscript/fonts/moved/n019004l.pfb
27.4.2005 00:19 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Co ma spolecneho unrar a Type1 font?
Tak jedině jestli ty filedeskriptory nezdědil od předka.
su -c 'lsof | grep ghostscript'
?
27.4.2005 14:18 petr_p
Rozbalit Rozbalit vše Re: Co ma spolecneho unrar a Type1 font?
Bingo! Muze za to libX11 knihovna (nebo neco, co dynamicky linkuje za behu) (XFree86-4.5.0), ktera nenastavi close-on-exec flag, a pak se deskriptor dedi na potomky (u me konkretne bbkeys+libX11->xterm->unrar).

Takova chyba me opravdu nenapadla (se starymi XFree86-4.3 tam tahle chyba nebyla).
#0  0x400117b0 in open () from /lib/ld-linux.so.2
#1  0x4000495f in open_verify () from /lib/ld-linux.so.2
#2  0x40006d03 in _dl_map_object () from /lib/ld-linux.so.2
#3  0x403d72bd in dl_open_worker () from /lib/tls/libc.so.6
#4  0x4000ccf6 in _dl_catch_error () from /lib/ld-linux.so.2
#5  0x403d6e30 in _dl_open () from /lib/tls/libc.so.6
#6  0x4040504b in dlopen_doit () from /lib/libdl.so.2
#7  0x4000ccf6 in _dl_catch_error () from /lib/ld-linux.so.2
#8  0x40405415 in _dlerror_run () from /lib/libdl.so.2
#9  0x40404ff2 in dlopen@@GLIBC_2.1 () from /lib/libdl.so.2
#10 0x401beb02 in open_object () from /usr/X11R6/lib/libX11.so.6
#11 0x401bf533 in _XlcDynamicLoad () from /usr/X11R6/lib/libX11.so.6
#12 0x401910ff in _XOpenLC () from /usr/X11R6/lib/libX11.so.6
#13 0x4019126a in _XrmInitParseInfo () from /usr/X11R6/lib/libX11.so.6
#14 0x4017c3b9 in NewDatabase () from /usr/X11R6/lib/libX11.so.6
#15 0x4017ddea in XrmGetFileDatabase () from /usr/X11R6/lib/libX11.so.6
#16 0x40056fa8 in bt::Resource::load (this=Variable "this" is not available.
) at basic_string.h:355
#17 0x40057036 in Resource (this=0x80b3f28, filename=@0xbfffef00)
    at Resource.cc:41
#18 0x08066588 in ScreenResource::loadStyle (this=0x80b105c, screen=0x80b8318,
    style=@0xbfffef00) at ScreenResource.cc:248
#19 0x08060d83 in BScreen::LoadStyle (this=0x80b8318)
    at BlackboxResource.hh:106
#20 0x080625e5 in BScreen (this=0x80b8318, bb=0xbffff2f0, scrn=0)
    at Screen.cc:110
#21 0x0808722a in Blackbox (this=0xbffff2f0, m_argv=0xbffff514,
    dpy_name=0xbffff6ca ":1", rc=@0xbffff460, multi_head=true)
    at blackbox.cc:414
#22 0x080893ed in main (argc=3, argv=0xbffff514) at main.cc:146
26.4.2005 22:26 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: Co ma spolecneho unrar a Type1 font?
Odpovědět | | Sbalit | Link | Blokovat | Admin
ls -l /proc/`pidof unrar`/fd
27.4.2005 00:02 petr_p
Rozbalit Rozbalit vše Re: Co ma spolecneho unrar a Type1 font?
Taky jsem se ujistoval. Vrati to same jako lsof:
petr@album:/tmp/unrar> ls -l /proc/`pidof unrar`/fd
celkem 5
lrwx------  1 petr users 64 2005-04-26 23:58 0 -> /dev/pts/2
lrwx------  1 petr users 64 2005-04-26 23:58 1 -> /dev/pts/2
lrwx------  1 petr users 64 2005-04-26 23:58 2 -> /dev/pts/2
lr-x------  1 petr users 64 2005-04-26 23:58 4 -> /usr/local/share/ghostscript/fonts/n019003l.pfb
lr-x------  1 petr users 64 2005-04-26 23:58 5 -> /usr/local/share/ghostscript/fonts/n019004l.pfb
I kdyz ted koukam, ze vlastne vubec nema otevreny ten archiv (rouru). Nejake divne.
Josef Kufner avatar 27.4.2005 00:10 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Co ma spolecneho unrar a Type1 font?
porad lepsi, nez kdybys tam nasel sitove sokety nekam daleko predaleko... koukal jsem na to u sebe, ale nic podezreleho mi neotevira (RAR 3.30)
Hello world ! Segmentation fault (core dumped)
Josef Kufner avatar 27.4.2005 00:12 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Co ma spolecneho unrar a Type1 font?
a UNRAR 3.40 take ne
Hello world ! Segmentation fault (core dumped)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.