VKD3D-Proton byl vydán ve verzi 3.0. Jedná se fork knihovny vkd3d z projektu Wine pro Proton. Knihovna slouží pro překlad volání Direct3D 12 na Vulkan. V přehledu novinek je vypíchnuta podpora AMD FSR 4 (AMD FidelityFX Super Resolution 4).
Poštovní klient Thunderbird byl vydán v nové verzi 145.0. Podporuje DNS přes HTTPS nebo Microsoft Exchange skrze Exchange Web Services. Ukončena byla podpora 32bitového Thunderbirdu pro Linux.
U příležitosti státního svátku 17. listopadu probíhá na Steamu i GOG.com již šestý ročník Czech & Slovak Games Week aneb týdenní oslava a také slevová akce českých a slovenských počítačových her.
Byla vydána nová verze 9.19 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček BirdNET-Go, tj. AI řešení pro nepřetržité monitorování a identifikaci ptáků.
Byla vydána nová verze 3.38 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.10 souvisejícího programovacího jazyka Dart (Wikipedie).
Organizace Apache Software Foundation (ASF) vydala verzi 28 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Byl vydán Debian 13.2, tj. druhá opravná verze Debianu 13 s kódovým názvem Trixie. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
Google představil platformu Code Wiki pro rychlejší porozumění existujícímu kódu. Code Wiki pomocí AI Gemini udržuje průběžně aktualizovanou strukturovanou wiki pro softwarové repozitáře. Zatím jenom pro veřejné. V plánu je rozšíření Gemini CLI také pro soukromé a interní repozitáře.
V přihlašovací obrazovce LightDM KDE (lightdm-kde-greeter) byla nalezena a již opravena eskalace práv (CVE-2025-62876). Detaily v příspěvku na blogu SUSE Security.
Byla vydána nová verze 7.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Tor Browser byl povýšen na verzi 15.0.1. Další novinky v příslušném seznamu.
split_string, ktora berie parameter ret ako navratovu hodnotu. Potom naalokuje dvojrozmerne pole. A spravne.
int split_string (char **ret, char *str, unsigned char del)
{
ret = (char **) malloc (sizeof (char *) * (count + 1));
ret[i] = (char *) malloc (sizeof (char) * (strlen (back_str) + 1));
}
Potom ju volam na tomto mieste:
char **row_parts = NULL;
unsigned int parts_count = split_string (row_parts, line, ';');
Tu to ale spadne.
printf ("%u %s\n", parts_count, row_parts[0]);
Preco je row_parts[0] nepovoleny pristup do pamati ak ret[0] v split_string je normalne dostupny?
Prikladam este vystup z debuggera:
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
parse_row (line=0x400150 "chalupa") at proj4.c:169
169 printf ("%u %s\n", parts_count, row_parts[0]);
(gdb)
Vopred dakujem za kazdu radu.
Řešení dotazu:
split_string, proměnnou back_str atd.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000Přistupujete na adresu 0, čili derefernce NULL-pointeru. Skoro bych řekl, že tam ty hvězdičky v hlavičce funkce mají být 3 a parametr by se měl předávat jako
&row_parts), protože takhle to IMHO nezměníte. Čili bude stále NULL.
int split_string (char ***ret, char *str, unsigned char del)
{
...//tu sa s ret nepracuje
*ret = (char **) malloc (sizeof (char *) * (count + 1));
back_str = str;
for (i = 0; *back_str && i < strlen (str); i++)
{
printf ("%u: %ld", i, strlen (back_str));
*ret[i] = (char *) malloc (sizeof (char) * (strlen (back_str) + 1));
Povodne som to aj mal s tymi 3 "hviezdickami", ale potom mam chybu vnutri tej split_string.
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000c00
0x00002a25 in split_string (ret=0xbffff55c, str=0x400150 "chalupa", del=59 ';') at proj4.c:244
244 *ret[i] = (char *) malloc (sizeof (char) * (strlen (back_str) + 1));
To sa mi ale velmi nezda, ten ret by uz mal byt na tom mieste alokovany ako ukazovatel na ukazovatele alebo sa mylim?
Este pre uplnost, tie ostatne premenne su nastavene spravne, takze by to miesto malo byt naalokovane dobre, sice neosetrujem tam zatial chyby mallocu, ale pamati mam zatial viac nez dost.
Dakujem za radu, nechcem byt nezdvorili, ale cely zdrojak sem dat nemozem.Taky nechci být nezdvořilý, ale tímhle si dost rapidně snížíte počet lidí, co budou ochotni odpovídat. O to ale nejde.
Povodne som to aj mal s tymi 3 "hviezdickami", ale potom mam chybu vnutri tej split_string.Střelím od boku, protože po půlnoci si s prioritou nejsem úplně jistý - je
*ret[i] správně uzávorkované - nemá to být (*ret)[i]?
Tiskni
Sdílej: