ATTENZIONE
Ecco la prima
versione completa dei tests.
- I miei test dovrebbero essere completi
- ho applicato i vostri tests al mio codice
Commenti e domande
Aggiungete
qua sotto commenti e domande:
leggiFiles() su directory inesistente
Mancavano le indicazioni (nonchè il valore stesso) sul valore che la funzione leggiFiles() doveva ritornare in caso di directory inesistente. Ed infatti è stato il tallone di Achille di quasi tutti i programmi
-- Comment added by
MassimilianoNatale on 26 Jun 2005
leggiFiles() su directory inesistente
Maledette...ti giuro, io volevo scriverlo sul forum, ma poi mi sono dimenticato...io ritorno UNKNOWN_ERROR...
-- Comment added by
AlessandroGrottoli on 26 Jun 2005
e che cavolo, mi sono scordato un'altra volta un controllo sul NULL_POINTER...
-- Comment added by
AlessandroGrottoli on 26 Jun 2005
leggiFiles() su directory insesistente
Io torno FILE_UNREADABLE e non va lo stesso
-- Comment added by
MassimilianoNatale on 26 Jun 2005
MEM_ALLOC_ERROR
spulciando qua e la nelle pagine della grande G, ho trovato il modo per sostituire la malloc ed effettuare quindi il test...
solo che ci son 2 problemi:
- l'uso di una global per lo switch
- se nella funzione prima della malloc viene chiamata una funzione di sistema che alloca memoria, è impossibile gestire l'errore
/* flag per la malloc */
int malloc_flag = 0;
/* variabile per salvare la vecchia malloc */
static void *(*old_malloc)(size_t, const void *);
/* falsa malloc */
static void *new_malloc(size_t size, const void *caller) {
void *result;
if(malloc_flag) {
/* la flag è settata */
malloc_flag = 0;
return NULL;
} else {
/* la flag non è settata */
__malloc_hook = old_malloc;
result = malloc(size);
/* salva il nuovo gancio */
old_malloc = __malloc_hook;
/* ricollega la funzione */
__malloc_hook = new_malloc;
return result;
}
}
/* funzione da sostituire all'inizializzazione della malloc */
static void malloc_init(void) {
old_malloc = __malloc_hook;
__malloc_hook = new_malloc;
}
/* si rimpiazza all'inizializzazione della malloc */
void (*__malloc_initialize_hook) (void) = malloc_init;
ps molti dei miei test falliscono per una diversa implementazione dei moduli 1 e 2
-- Comment added by
MarcelloLagana on 27 Jun 2005
RE: malloc
E' esattamente quello che avrei voluto fare (ma non ho trovato ancora il tempo).
RE: codici di errore per le directory
State tranquilli ...
-- Comment added by
AndreaSterbini on 28 Jun 2005
Ivano Lapergola
Sono riuscito a compilare anche il tuo test
-- Comment added by
AndreaSterbini on 12 Jul 2005
Ivano Lapergola per il Prof
Prof. ho riguardato il codice che le ho consegnato per il modulo 4 e ho capito dove ho sbagliato!Cmq se lei e già riuscito a compilare il mio codice,vuol dire che avrà capito anche lei quale era l'errore!
-- Comment added by
IvanoLapergola on 14 Jul 2005
Esame
Quindi che le discussioni/verbalizzazioni si terranno a Settembre è ufficiale?
-- Comment added by
MassimilianoNatale on 14 Jul 2005
Re: Esame
Sì.
BTW: Sono a buon punto con i test del modulo 4 (circa all' 80%) e li pubblicherò appena disponibili (entro la fine della settimana prossima).
-- Comment added by
AndreaSterbini on 15 Jul 2005
Prima versione "completa" dei test
Ho appena messo online la prima versione
completa dei test.
-- Comment added by
AndreaSterbini on 19 Jul 2005
doh
urgh... O_o
senza dubbio il modulo che mi è andato peggio di tutti...
si vede che i numeri pari mi hanno portato sfiga
-- Comment added by
AlbertoLaRocca on 20 Jul 2005
No such template def TMPL:DEF{PROMPT:thread}