Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.
Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.
Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.
OpenSearch (Wikipedie) byl vydán ve verzi 3.0. Podrobnosti v poznámkách k vydání. Jedná se o fork projektů Elasticsearch a Kibana.
PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.
Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.
Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
mem.h
#include <QWidget> class Mem : public QWidget { public: Mem (QWidget * parent = NULL); };
mem.cpp
#include "mem.h" #include <QVBoxLayout> #include <QLabel> Mem::Mem (QWidget * parent) : QWidget(parent) { QVBoxLayout * vbox = new QVBoxLayout(this); QLabel * one = new QLabel("Hello"); QLabel * two = new QLabel("world!"); vbox->addWidget(one); vbox->addWidget(two); setLayout(vbox); }
main.cpp
#include <QApplication> #include "mem.h" int main (int argc, char ** argv) { QApplication app(argc,argv); Mem window; window.show(); return app.exec(); }A teď výpis z Valgrindu:
==26725== HEAP SUMMARY: ==26725== in use at exit: 83,285 bytes in 1,696 blocks ==26725== total heap usage: 17,743 allocs, 16,047 frees, 1,890,066 bytes allocated ==26725== ==26725== LEAK SUMMARY: ==26725== definitely lost: 192 bytes in 2 blocks ==26725== indirectly lost: 912 bytes in 34 blocks ==26725== possibly lost: 1,720 bytes in 9 blocks ==26725== still reachable: 80,461 bytes in 1,651 blocks ==26725== suppressed: 0 bytes in 0 blocksVýpis s
--leak-check=full
==27097== Memcheck, a memory error detector ==27097== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al. ==27097== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info ==27097== Command: ./memory_leak ==27097== Parent PID: 24134 ==27097== ==27097== ==27097== HEAP SUMMARY: ==27097== in use at exit: 83,285 bytes in 1,696 blocks ==27097== total heap usage: 17,438 allocs, 15,742 frees, 1,884,214 bytes allocated ==27097== ==27097== 120 bytes in 1 blocks are possibly lost in loss record 116 of 170 ==27097== at 0x4024150: memalign (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==27097== by 0x402420E: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==27097== by 0x509FFA9: ??? (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50A14C8: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50A219D: g_slist_prepend (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50A516C: g_strsplit (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50BACB8: g_get_language_names (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50BB216: ??? (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50AD289: g_thread_init_glib (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50364B5: g_thread_init (in /usr/lib/libgthread-2.0.so.0.2800.6) ==27097== by 0x4C61941: QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*) (in /usr/lib/qt/lib/libQtCore.so.4.7.0) ==27097== by 0x4227BB5: ??? (in /usr/lib/qt/lib/libQtGui.so.4.7.0) ==27097== ==27097== 124 bytes in 1 blocks are definitely lost in loss record 117 of 170 ==27097== at 0x4025BB8: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==27097== by 0x53CCE52: ??? (in /usr/lib/libxcb.so.1.1.0) ==27097== by 0x53CCF54: ??? (in /usr/lib/libxcb.so.1.1.0) ==27097== by 0x53CC813: xcb_connect_to_display_with_auth_info (in /usr/lib/libxcb.so.1.1.0) ==27097== by 0x53CCB5B: xcb_connect (in /usr/lib/libxcb.so.1.1.0) ==27097== by 0x52D5652: _XConnectXCB (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52C5476: XOpenDisplay (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x41FBC5C: ??? (in /usr/lib/qt/lib/libQtGui.so.4.7.0) ==27097== by 0x417DAD7: QApplicationPrivate::construct(_XDisplay*, unsigned long, unsigned long) (in /usr/lib/qt/lib/libQtGui.so.4.7.0) ==27097== by 0x417E342: QApplication::QApplication(int&, char**, int) (in /usr/lib/qt/lib/libQtGui.so.4.7.0) ==27097== by 0x8049E7A: main (in /home/yenn/qt/memory_leak/memory_leak) ==27097== ==27097== 360 bytes in 3 blocks are possibly lost in loss record 132 of 170 ==27097== at 0x4024150: memalign (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==27097== by 0x402420E: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==27097== by 0x509FFA9: ??? (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50A14E5: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50A219D: g_slist_prepend (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50A516C: g_strsplit (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50BACB8: g_get_language_names (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50BB216: ??? (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50AD289: g_thread_init_glib (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50364B5: g_thread_init (in /usr/lib/libgthread-2.0.so.0.2800.6) ==27097== by 0x4C61941: QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*) (in /usr/lib/qt/lib/libQtCore.so.4.7.0) ==27097== by 0x4227BB5: ??? (in /usr/lib/qt/lib/libQtGui.so.4.7.0) ==27097== ==27097== 980 (68 direct, 912 indirect) bytes in 1 blocks are definitely lost in loss record 150 of 170 ==27097== at 0x4025C9E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==27097== by 0x52E9A57: ??? (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52E9FD0: ??? (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52EBC91: ??? (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52EC4B4: _XlcCreateLC (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x530F509: _XlcUtf8Loader (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52F43BB: _XOpenLC (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52F467D: _XrmInitParseInfo (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52DAA10: ??? (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52DE1B7: XrmGetStringDatabase (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52B9ADE: ??? (in /usr/lib/libX11.so.6.3.0) ==27097== by 0x52B9D0E: XGetDefault (in /usr/lib/libX11.so.6.3.0) ==27097== ==27097== 1,240 bytes in 5 blocks are possibly lost in loss record 156 of 170 ==27097== at 0x4024150: memalign (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==27097== by 0x402420E: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==27097== by 0x509FFA9: ??? (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50A14E5: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50545F8: g_array_sized_new (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50546D2: g_array_new (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50AD16E: g_static_private_set (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x5064846: g_get_filename_charsets (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50648CC: ??? (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50AD279: g_thread_init_glib (in /usr/lib/libglib-2.0.so.0.2800.6) ==27097== by 0x50364B5: g_thread_init (in /usr/lib/libgthread-2.0.so.0.2800.6) ==27097== by 0x4C61941: QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(_GMainContext*) (in /usr/lib/qt/lib/libQtCore.so.4.7.0) ==27097== ==27097== LEAK SUMMARY: ==27097== definitely lost: 192 bytes in 2 blocks ==27097== indirectly lost: 912 bytes in 34 blocks ==27097== possibly lost: 1,720 bytes in 9 blocks ==27097== still reachable: 80,461 bytes in 1,651 blocks ==27097== suppressed: 0 bytes in 0 blocks ==27097== Reachable blocks (those to which a pointer was found) are not shown. ==27097== To see them, rerun with: --leak-check=full --show-reachable=yes ==27097== ==27097== For counts of detected and suppressed errors, rerun with: -v ==27097== ERROR SUMMARY: 5 errors from 5 contexts (suppressed: 75 from 9)OS: Slackware-current, g++ 4.5.3, QT 4.7 Je to chyba v QT nebo dělám něco špatně já?
Řešení dotazu:
Nijak zvlášť jsem to nestudoval, ale IMHO minimálně neuklízíš vbox, one a two
addWidget()
[...]
Note: The ownership of item is transferred to the layout, and it's the layout's responsibility to delete it
Pokuď layout manager uklízí sám své widgety a widget svůj layout manager, pak je všechno v pořádku.
Release 1.7 (2010-08-13)
========================
- Always wake up readers after writing
- Get rid of PATH_MAX and MAXPATHLEN
- Add ~ operator support in code generator
- xcb_open: Improve protocol/host parsing
- xcb_connect_to_display_with_auth_info: Fix memory leak
- Report which extensions are being built
Dost z tech glib leaku je staticky alokovana pamet, ktera se alokoje jen jednou pri startu - nemela by mit vliv na program.
Tiskni
Sdílej: