abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:22 | IT novinky

    Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu srpnový souhrn novinek. Kvůli nedostatečnému zájmu byla ukončena výroba telefonů PinePhone Pro.

    Ladislav Hagara | Komentářů: 0
    včera 22:22 | Nová verze

    Po pěti měsících vývoje byla vydána nová verze 0.15.1 programovacího jazyka Zig (GitHub, Wikipedie). Verze 0.15.0 byla přeskočena. Přispělo 162 vývojářů. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Komunita

    Před sedmi lety společnost Valve představila fork projektu Wine s názvem Proton umožňující v Linuxu přímo ze Steamu hrát počítačové hry do té doby běžící pouze ve Windows. Aktuální přehled podporovaných her na stránkách ProtonDB

    Ladislav Hagara | Komentářů: 0
    včera 14:55 | IT novinky

    Společnost DuckDuckGo rozšířila svůj AI chat Duck.ai o GPT-5 mini (𝕏). Duck.ai umožňuje anonymní přístup bez vytváření účtů k několika modelům umělé inteligence. Aktuálně k GPT-4o mini, GPT-5 mini, Llama 4 Scout, Claude Haiku 3.5 a Mistral Small 3.

    Ladislav Hagara | Komentářů: 5
    včera 12:44 | Bezpečnostní upozornění

    Marek Tóth v příspěvku DOM-based Extension Clickjacking: Data ve správcích hesel v ohrožení na svém blogu popsal novou clickjacking techniku s několika variantami útoků a otestoval ji proti 11 správcům hesel. Výsledkem bylo nalezení několika 0-day zranitelností, které mohly ovlivnit uložená data desítek milionů uživatelů. Jedno kliknutí kdekoliv na webové stránce kontrolované útočníkem umožňovalo ukrást uživatelská data ze

    … více »
    Ladislav Hagara | Komentářů: 1
    20.8. 21:11 | IT novinky

    Na dnešní akci Made by Google 2025 (YouTube) byly představeny telefony Pixel 10 s novým čipem Google Tensor G5 a novými AI funkcemi, hodinky Pixel Watch 4 a sluchátka Pixel Buds 2a.

    Ladislav Hagara | Komentářů: 25
    20.8. 14:11 | Nová verze

    The Document Foundation oznámila vydání nové major verze 25.8 svobodného kancelářského balíku LibreOffice. Podrobný přehled nových vlastností i s náhledy v poznámkách k vydání (cs) a také na Youtube a PeerTube.

    Ladislav Hagara | Komentářů: 16
    20.8. 04:00 | Nová verze

    Zeek (Wikipedie), původně Bro, byl vydán v nové major verzi 8.0.0. Jedná se o open source platformu pro analýzu síťového provozu. Vyzkoušet lze online.

    Ladislav Hagara | Komentářů: 0
    19.8. 23:55 | Zajímavý software

    Emacs na stříhání videa? Klidně.

    Ladislav Hagara | Komentářů: 7
    19.8. 15:55 | Nová verze

    Byl vydán Mozilla Firefox 142.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 142 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (77%)
     (10%)
     (5%)
     (3%)
     (5%)
     (0%)
    Celkem 39 hlasů
     Komentářů: 6, poslední včera 13:35
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    15.10.2018 20:35 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Qt Charts (C++) a únik paměti (memory leak)
    Obecně platí, že výstupy z nástrojů jako ASan či Valgrind je třeba umět interpretovat, jinak může člověk strávit hodiny pronásledováním neexistujících problémů.

    1) Mám trochu problém s tím, že v té knihovně možná je chyba, která by se při dlouhodobějším používání projevila. U té mojí aplikace je to jedno, tam se vykreslí pár grafů a pak to uživatel zavře, takže to žádný problém nezpůsobí. Ale co kdyby to bylo něco jako webový prohlížeč nebo desktopové prostředí? To běží týdny nebo měsíce a uživatel tam pořád něco otvírá a zavírá -- tam by se ty úniky paměti nastřádaly a problém by to byl. Tohle přece musí být nějak vyřešené, ne? <javaTrolling>Nebo je je jediným řešením garbage collector? :-)</javaTrolling>

    2) Chápu, že je potřeba se to naučit číst a chápu i že ne vše je dokonalé a nějaké menší chyby nebo plané poplachy v těch knihovnách být můžou. Můj plán tedy byl, že do LSAN_OPTIONS=suppressions= přidám (zatím tam mám libdbus-1.so a libfontconfig.so) ignorování známých chyb v knihovnách, a pak mi AddressSanitizer bude hlásit už jen moje chyby. Jenže jak na to -- co tam mám přidat, když mi hlásí tohle?

    $ LSAN_OPTIONS=suppressions=stackedbarchart/asan-ignore.txt build-stackedbarchart-Desktop-Ladu011bnu00ed/stackedbarchart 
    
    =================================================================
    ==10398==ERROR: LeakSanitizer: detected memory leaks
    
    Indirect leak of 6048 byte(s) in 84 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717254441  (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bc441)
    
    Indirect leak of 5830 byte(s) in 29 object(s) allocated from:
        #0 0x7f871838eb50 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb50)
        #1 0x7f87170458c1 in QArrayData::allocate(unsigned long, unsigned long, unsigned long, QFlags<QArrayData::AllocationOption>) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xad8c1)
    
    Indirect leak of 2240 byte(s) in 20 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8715773581 in QBrush::init(QColor const&, Qt::BrushStyle) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x2bb581)
    
    Indirect leak of 2128 byte(s) in 2 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8715690ed3 in QFontDatabase::load(QFontPrivate const*, int) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x1d8ed3)
    
    Indirect leak of 1944 byte(s) in 27 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f87172556f2 in QObjectPrivate::connectImpl(QObject const*, int, QObject const*, void**, QtPrivate::QSlotObjectBase*, Qt::ConnectionType, int const*, QMetaObject const*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bd6f2)
    
    Indirect leak of 1904 byte(s) in 17 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717258e01 in QObject::QObject(QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2c0e01)
    
    Indirect leak of 576 byte(s) in 8 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8715868976 in QPen::QPen(QColor const&) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x3b0976)
        #2 0x29183d753b2edeff  (<unknown module>)
    
    Indirect leak of 512 byte(s) in 8 object(s) allocated from:
        #0 0x7f871838ef40 in realloc (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdef40)
        #1 0x7f87170962e0 in QListData::realloc_grow(int) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xfe2e0)
    
    Indirect leak of 512 byte(s) in 16 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717253961 in QObjectPrivate::addConnection(int, QObjectPrivate::Connection*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2bb961)
    
    Indirect leak of 480 byte(s) in 30 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffeafe  (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xceafe)
    
    Indirect leak of 272 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717fcaa03 in QtCharts::QBarCategoryAxis::QBarCategoryAxis(QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0x9aa03)
    
    Indirect leak of 264 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717fc7f83 in QtCharts::QValueAxis::QValueAxis(QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0x97f83)
    
    Indirect leak of 192 byte(s) in 2 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8715667435 in QFont::detach() (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x1af435)
    
    Indirect leak of 160 byte(s) in 5 object(s) allocated from:
        #0 0x7f871838eb50 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb50)
        #1 0x7f8717096131 in QListData::detach_grow(int*, int) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xfe131)
    
    Indirect leak of 160 byte(s) in 5 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffa871  (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xca871)
    
    Indirect leak of 160 byte(s) in 5 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffa7e5  (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xca7e5)
    
    Indirect leak of 160 byte(s) in 5 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffa74b  (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xca74b)
    
    Indirect leak of 160 byte(s) in 5 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffa6a3  (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xca6a3)
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    Indirect leak of 152 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8718002953 in QtCharts::QStackedBarSeries::QStackedBarSeries(QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xd2953)
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    Indirect leak of 112 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717f91bc1  (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0x61bc1)
        #2 0x60300004e2df  (<unknown module>)
    
    Indirect leak of 96 byte(s) in 3 object(s) allocated from:
        #0 0x7f871838eb50 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb50)
        #1 0x7f87170961eb in QListData::detach(int) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xfe1eb)
    
    Indirect leak of 96 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f87156652e5 in QFont::QFont(QString const&, int, int, bool) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x1ad2e5)
    
    Indirect leak of 88 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffdc3d in QtCharts::QBarSet::QBarSet(QString, QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xcdc3d)
        #2 0xeae59bd6  (<unknown module>)
    
    Indirect leak of 88 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffdc3d in QtCharts::QBarSet::QBarSet(QString, QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xcdc3d)
    
    Indirect leak of 88 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffdc3d in QtCharts::QBarSet::QBarSet(QString, QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xcdc3d)
        #2 0x7fff1428e1cf  (<unknown module>)
    
    Indirect leak of 88 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffdc3d in QtCharts::QBarSet::QBarSet(QString, QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xcdc3d)
        #2 0x7f871946d147  (<unknown module>)
    
    Indirect leak of 88 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717ffdc3d in QtCharts::QBarSet::QBarSet(QString, QObject*) (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0xcdc3d)
        #2 0x7f87182db72e  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x2b72e)
    
    Indirect leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x55dbc98ba845 in main ../stackedbarchart/main.cpp:59
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    Indirect leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x55dbc98b9ab4 in main ../stackedbarchart/main.cpp:49
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    Indirect leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x7f8717f92fe6  (/usr/lib/x86_64-linux-gnu/libQt5Charts.so.5+0x62fe6)
    
    Indirect leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x55dbc98b9a31 in main ../stackedbarchart/main.cpp:48
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    Indirect leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x55dbc98b99ae in main ../stackedbarchart/main.cpp:47
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    Indirect leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x55dbc98bacf3 in main ../stackedbarchart/main.cpp:77
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    Indirect leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x55dbc98b992b in main ../stackedbarchart/main.cpp:46
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    Indirect leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x55dbc98b98a8 in main ../stackedbarchart/main.cpp:45
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    
    -----------------------------------------------------
    Suppressions used:
      count      bytes template
         78      13390 /lib/x86_64-linux-gnu/libdbus-1.so
        127       8807 /usr/lib/x86_64-linux-gnu/libfontconfig.so
    -----------------------------------------------------
    
    SUMMARY: AddressSanitizer: 24790 byte(s) leaked in 289 allocation(s).
    

    Čeho se tam můžu chytnout, když tam jsou řádky jako tyhle?

        #0 0x7f8718390458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458)
        #1 0x55dbc98b98a8 in main ../stackedbarchart/main.cpp:45
        #2 0x7f8716619b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)

    Jde mi o to, abych toho neignoroval moc a nezakrylo to moje vlastní chyby. Když tam přidám primitivní chybu:

    char* chyba = new char[666];
    return returnCode;

    Tak to způsobí hlášku o přímém úniku:

    Direct leak of 666 byte(s) in 1 object(s) allocated from:
        #0 0x7fd512c20618 in operator new[](unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0618)
        #1 0x558aed43af84 in main ../stackedbarchart/main.cpp:116
        #2 0x7fd510ea9b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    

    To tedy chceš říct, že mám ignorovat všechny nepřímé úniky? Nehrozí (alespoň v Qt), že bych takový nepřímý únik způsobil chybou ve svém kódu?

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.