V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).
Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.
Společnost Meta představila OpenZL. Jedná se o open source framework pro kompresi dat s ohledem na jejich formát. Zdrojové kódy jsou k dispozici na GitHubu.
Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.
Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.
Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.
Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.
Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.
Zdravím,
Pokouším se napsat program a spíš se i učím, ale mám problém s tímhle. Nedokážu pořád pochopit jak to pracuje a jedinej zdroj informací je
http://library.gnome.org/devel/glib/stable/glib-Key-value-file-parser.html
http://www.gtkbook.com/tutorial.php?page=keyfile
z čehož mi to pořád není jasný
Mám napsanou funkci pro přidávání záznamů
void add_record(gchar *name, gchar *last_name, gchar *birth, gchar *name_holiday) { GKeyFile *keyfile; GKeyFileFlags flags; GError *error = NULL; gchar *group_name; keyfile = g_key_file_new(); flags = G_KEY_FILE_KEEP_COMMENTS; if (!g_key_file_load_from_file (keyfile, "date_reminder.conf", flags, &error)) { g_error (error->message); return; } sprintf(group_name,"%s-%s", name, last_name); g_strup(group_name); /* Tohle je jenom kontrole záznamů co se tam bude vkládat */ printf("%s %s %s %s %s\n", group_name,name,last_name,birth,name_holiday); g_key_file_set_string(keyfile, group_name, "name", name); g_key_file_set_string(keyfile, group_name, "last_name", last_name); g_key_file_set_string(keyfile, group_name, "birth", birth); g_key_file_set_string(keyfile, group_name, "name_holiday", name_holiday); }
Problém je v tom, že se mi to do souboru neuloží a vůbec nevím co mi tam chybí nebo co mám blbě, takže budu rád za každou radu, protože v tuto chvíli víc asi nevymyslím. Výsledek by měl vypadat asi takhle pro uložení např. Jan, Osel, 4.5.1978, 5.6
[JAN-OSEL] name=Jan last_name=Osel birth=4.5.1978 name_holiday=5.6
Díky :)
Vyřešeno :)
void add_record(gchar *name, gchar *last_name, gchar *birth, gchar *name_holiday) { GKeyFile *keyfile; GKeyFileFlags flags; GError *error = NULL; gchar group_name[40]; gchar *buffer; gsize length; keyfile = g_key_file_new(); flags = G_KEY_FILE_KEEP_COMMENTS; if (!g_key_file_load_from_file (keyfile, "date_reminder.conf", flags, &error)) { g_error (error->message); return; } sprintf(group_name,"%s-%s", name, last_name); g_strup(group_name); printf("%s %s %s %s %s\n", group_name,name,last_name,birth,name_holiday); if(!g_key_file_has_group(keyfile,group_name)) { g_key_file_set_string(keyfile, group_name, "name", name); g_key_file_set_string(keyfile, group_name, "last_name", last_name); g_key_file_set_string(keyfile, group_name, "birth", birth); g_key_file_set_string(keyfile, group_name, "name_holiday", name_holiday); } else { printf("už existuje\n"); } buffer = g_key_file_to_data(keyfile, &length, NULL); g_file_set_contents ("date_reminder.conf", buffer, length, &error); g_key_file_free(keyfile); g_free(buffer); }
sprintf(group_name,"%s-%s", name, last_name); g_strup(group_name);je dosť zvláštna. Lepšie je asi niečo ako
group_name = g_strdup_printf("%s-%s", name, last_name);(a potom samozrejme g_free(group_name);) GKeyFile neukladá automaticky do súboru, o to sa musíš postarať ty. Funkcia g_key_file_to_data vráti reťazec obsahujúci tie kľúče/hodnoty a potom s tým musíš niečo urobiť (v tvojom prípade to musíš uložiť do toho súboru).
Díky,
Já teprv s Glib začínám takže ješte všechny ty funkce tak neznám takže nemám přehled :)
Tiskni
Sdílej: