Conform stivei afișate, so_init pare să fie apelat din so_end și apoi ajungi să 
apelezi ceva care verifică dacă un șir este un număr?! Și se întâmplă să 
dereferențiezi un pointer NULL?

Suspicious... (metoda iswdigit din ntdll)

Sent from Mail for Windows 10

From: Ionuț Mihalache via so
Sent: Thursday, May 9, 2019 8:42 PM
To: Sisteme de Operare
Subject: [so] [Tema4][Windows] - Segfault so_init

Salut,

După ce s-a reparat problema cu checker-ul pe windows am văzut că am probleme 
de segmentation fault. Acum eu nu zic că nu este de la mine dar eu nu știu să 
interpretez eroarea următoare dată de drmemory:
Error #1: UNADDRESSABLE ACCESS: reading 0x00000014-0x00000018 4 byte(s)
# 0 ntdll.dll!iswdigit               +0x2a2    (0x7751fc47 <ntdll.dll+0x2fc47>)
# 1 ntdll.dll!iswdigit               +0x1b0    (0x7751fb56 <ntdll.dll+0x2fb56>)
# 2 libscheduler.dll!so_init         +0x3f6    (0x748713f7 
<libscheduler.dll+0x13f7>)
# 3 libscheduler.dll!so_end          +0x1d     (0x74871eae 
<libscheduler.dll+0x1eae>)
# 4 run_test.exe!?                   +0x0      (0x01111273 
<run_test.exe+0x1273>)
# 5 run_test.exe!?                   +0x0      (0x0111351d 
<run_test.exe+0x351d>)
# 6 run_test.exe!?                   +0x0      (0x0111442e 
<run_test.exe+0x442e>)
# 7 KERNEL32.dll!BaseThreadInitThunk +0x11     (0x76611174 
<KERNEL32.dll+0x51174>)
Note: @0:00:01.451 in thread 1056
Note: instruction: inc    0x14(%eax) -> 0x14(%eax)

Din ce înțeleg ar fi problema în so_init însă trec teste până acolo. Am pus 
printări la începutul funcție so_init și nici măcar nu intră în funcție. Care 
ar putea fi problema?

Mulțumesc

_______________________________________________
http://ocw.cs.pub.ro/courses/so/info/lista-discutii

Raspunde prin e-mail lui