A doua corectura (la sugestia lui Sorin)

Nici n-am dat bine submit la post-ul anterior, ca Silviu a luat iar atitudine. De data asta a pus “unsigned long” in loc de “long”, dar nu pentru ca ar bijbii in jurul solutiei dupa ce citeste aici, ci pentru ca:

According to Sorin’s observation I changed the long type to unsigned long.

Putin mai devreme, inainte de a vedea post-ul meu, Silviu ii raspunsese direct lui Sorin in felul urmator:

Absolutely. Nobody stops you to replace long with long long or unsigned long long.

Absolutely. Nimeni nu te oprea, dar o faceai degeaba, ca folosea _wstat(), care-ti returneaza dimensiunea pe 32 de biti. Dupa aia poti sa inlocuiesti tu ce vrei, ca e prea tirziu. Acum ar merge inlocuit, dar cineva totusi l-a oprit pe miner si nici dupa a doua corectura nu se descurca cu fisiere mai mari de 4 GB. Poate din a treia ii iese?

Probabil tot in urma “observatiei lui Sorin”, minerul a sters #ifdef-ul rusinos si din FAQ-ul la care tocmai dadusem link. Noroc ca o vreme de acum incolo pagina aia va fi in cache la Google cu aberatia originala. Probabil dupa ce va expira cache-ul, Silviu va pretinde ca a fost asa dintotdeauna (observati ca nu scrie “last edited”, deci MVP Ovidiu Cucu sau MVP Marius Bancila i-au dat o mina de ajutor cu editarea). Nu uitati: el isi recunoaste greselile.

PS: totusi, trebuie sa recunosc ca nu m-as fi gindit ca o functie care returneaza dimensiunea unui fisier poate genera atita amuzament. Inca o dovada ca tot ce-ti trebuie pentru ca sa te poti distra e o problema banala si un miner prost.

Advertisements

5 Responses to “A doua corectura (la sugestia lui Sorin)”

  1. Another whatever Says:

    Cred ca v-a scapat ceva: return (unsigned long) -1. Este deja prea mult! Cred ca intram acusi la operatii pe biti. BitDefender!

  2. Am vrut sa ma leg de faptul ca probabil in afara functiei ar testa daca a mers comparind cu -1, da’ ma intindeam prea mult. Retardarea lui nu merita sa se piarda in detalii d-astea minore, trebuie privita in ansamblu.

    Eu nu inteleg cum poate sa puna cacaturi pe blogul ala in continuare, stiind ca stam cu geana pe el. Macar ar putea avea decenta sa le verifice inainte sa le puna acolo, da’ cred ca e asa de prost incit nu s-a prins inca ca e un pattern in faptul ca de fiecare data dupa ce posteaza niste cod undeva, trebuie sa se intoarca sa corecteze la scurt timp, in urma “observatiilor” de pe blog-ul asta (cred ca o sa-l botezam “Sorin” pe blog de acum incolo).

    PS: buna aia cu BitDefender.

  3. Tot nu e bine codul. In mod ANSI da char* la _wstat64 :)) Clar nu a testat codul nici a treia oara.

  4. Ia taci ca a explicat:


    Somebody wonders why I should I returned -1 in an unsigned long return function.
    Because even in that way I can easy test the validity of returned value:
    unsigned long size = GetFileSize(…);

    Pacat ca intre timp nu mai returneaza unsigned long, ci long long, deci cacatul ala fute meciu’.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s

%d bloggers like this: