<div dir="auto">Păi eroarea e una făcută de ei, nu una reală, de-aia errno nu e setat. Ei înlocuiesc apelul normal de read cu unul al lor care simulează eroare dar omite să seteze și errno.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Mar 26, 2019, 21:28 George Diaconu <<a href="mailto:pgn.george@gmail.com">pgn.george@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>Mersi.<div dir="auto">Atunci las sa intoarca 0 sau 1 si nu mai declar tipuri diferite pentru erori.</div><div dir="auto">Din ce am inteles eu din testul ferror_read_small ar fi trebuit sa fie setat errno, mai ales ca apelul de sistem read() intoarce totusi -1.</div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Mar 26, 2019, 21:21 Paul Olaru <<a href="mailto:olarupaulstelian97@gmail.com" target="_blank" rel="noreferrer">olarupaulstelian97@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">Nu îți pasă de errno. read() original setează errno dar erorile injectate de checker pe cazul respectiv nu setează.<div dir="auto"><br></div><div dir="auto">so_ferror doar spune dacă a fost o eroare (nu putem identifica de ce tip).</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Mar 26, 2019, 20:57 George Diaconu via so <<a href="mailto:so@cursuri.cs.pub.ro" rel="noreferrer noreferrer" target="_blank">so@cursuri.cs.pub.ro</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Salut,<br>
<br>
Cum spune si subiectul, apelul read(), in momentul in care intoarce<br>
-1, nu seteaza si errno. In manual scrie ca ar trebui sa il seteze,<br>
dar totusi, secventa urmatoare de cod:<br>
<br>
long rc = read(...)<br>
int code = errno;<br>
printf("%d\n", code);<br>
<br>
afiseaza intotdeauna 0, chiar si atunci cand read() intoarce -1.<br>
<br>
Am inclus "errno.h", si nu fac nimic ciudat cu errno (cum ar fi sa-l redeclar).<br>
Am doua intrebari:<br>
1. Nu am inteles eu bine cand e setata valoarea intoarsa de errno?<br>
2. E ok daca imi declar singur mai multe coduri de eroare si le intorc<br>
pe acestea in so_ferror()?<br>
<br>
Multumesc anticipat.<br>
_______________________________________________<br>
<a href="http://ocw.cs.pub.ro/courses/so/info/lista-discutii" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">http://ocw.cs.pub.ro/courses/so/info/lista-discutii</a></blockquote></div>
</blockquote></div></div></div>
</blockquote></div>