On the other side of the screen, it all looks so easy

The Worst Joke Ever

Ho passato gli ultimi tre giorni a tentare di capire perché un pezzo di codice producesse un SIGSEGV. Ho cambiato linee, logica, tipi di dato. Niente: qualunque cosa facessi, solo crash. Come al solito, gdb si rivelava poco utile, mentendo spudoratamente sul luogo della violazione di memoria.

Oggi pomeriggio ho deciso di arrendermi e ho chiesto a Kris se poteva darmi una mano (dato che il segfault si verificava nel codice del GtkTreeModelSort che lui mantiene). Stasera mi dice di aver trovato la patch:

Index: gtk/gtkfilechooserdefault.c
==============================================================
--- gtk/gtkfilechooserdefault.c (revision 17846)
+++ gtk/gtkfilechooserdefault.c (revision 17848)
@@ -9508,7 +9508,7 @@ recent_column_path_sort_func (GtkTreeMod
   if (!name_a)
     return 1;

-  if (!name_b);
+  if (!name_b)
     return -1;

   if (is_folder_a != is_folder_b)

Penso che i miei moccoli siano arrivati vicinissimi al Moccolo a Delta di Dirac (dieci alla ventottesima madonne in un microsecondo).

Va da sé che Kris si vedrà offrire una birra al GUADEC.

11 Comments »

  1. Luca said,

    May 15, 2007 @ 09:06

    Ma gdb sbaglia anche con MALLOC_CHECK_ settata a 2? Io un paio di volte l’ho usata e mi pare funzionasse.

  2. brucaliff0 said,

    May 15, 2007 @ 09:08

    Mitico, il Moccolo a Delta di Dirac mi mancava! :D

  3. pbor said,

    May 15, 2007 @ 09:46

    /me handles ebassi gcc’s -Wextra option :)

  4. zefram said,

    May 15, 2007 @ 10:44

    @pbor

    -Wextra non lo conoscevo - neat

  5. Davide Inglima - limaCAT said,

    May 15, 2007 @ 11:25

    Graffe 1 - Senza Graffe 0

  6. zefram said,

    May 15, 2007 @ 12:36

    @davide

    con le graffe non avrebbe risolto molto:

      if (!name_b); {
        return -1;
      }
    

    è sempre codice valido. ;-)

  7. Davide Inglima - limaCAT said,

    May 15, 2007 @ 12:50

    Umm… vero. :)

    p.s.: (e anche OT) sembra strano che in Java (l’unico ambiente che ora ho sottomano) accetti comunque la presenza della graffa dopo il ; ed entri dentro l’IF… 10^28 comunque é un bel record :)

  8. NoWhereMan said,

    May 15, 2007 @ 13:01

    Il Moccolo a Delta di Dirac è stupendo :D

  9. zefram said,

    May 15, 2007 @ 23:14

    il “moccolo a delta di dirac” è copyright © 2001 leonardo serni, e viene definito come “un numero di madonne dell’ordine di dieci alla nona concentrato in un periodo di circa due millisecondi. […] si dice che sia capace di convincere il Signore a porre fine all’Universo”. io ho dovuto rivedere il numero, dato che ho abbondantemente superato le 10 alla nona madonne in quel lasso di tempo e non è successo niente.

  10. NoWhereMan said,

    May 19, 2007 @ 16:28

    un amico di mio cuggino una volta ha smoccolato talmente tanto che un santo gli ha citofonato per dirgli che di sopra avevano capito :D

  11. Eileann said,

    June 6, 2007 @ 22:05

    Il moccolo a Delta di Dirac mi ha fatto ridere fino alle lacrime!

RSS feed for comments on this post · TrackBack URI

Leave a Comment

Stop blog spam today with the consummate, far-famed, and strong WP Hashcash!