{"id":34,"date":"2007-11-19T22:52:38","date_gmt":"2007-11-19T20:52:38","guid":{"rendered":"http:\/\/blog.rastersoft.com\/index.php\/2007\/11\/19\/bugs-y-trancazos\/"},"modified":"2007-11-19T22:52:38","modified_gmt":"2007-11-19T20:52:38","slug":"bugs-y-trancazos","status":"publish","type":"post","link":"https:\/\/blog.rastersoft.com\/?p=34","title":{"rendered":"Bugs y trancazos"},"content":{"rendered":"<p>Parece que estoy incubando algo. Espero que sea un simple resfriado y no una gripe. En este momento, despu\u00e9s de tomarme una aspirina, ya estoy mejor, por eso aprovecho para a\u00f1adir una nueva entradilla aqu\u00ed.<\/p>\n<p>Hace unos d\u00edas, mientras ultimaba la nueva versi\u00f3n de DeVeDe, encontr\u00e9 un molesto bug en el widget <a target=\"_blank\" href=\"http:\/\/www.pygtk.org\/docs\/pygtk\/class-gtkfilechooserbutton.html\">Gtk.FileChooserButton<\/a>; en concreto en el m\u00e9todo set_filename(). Cuando el usuario pulsa el bot\u00f3n <strong>Propiedades<\/strong> para cambiar las propiedades de una pel\u00edcula (tasa binaria, resoluci\u00f3n&#8230;), uso ese m\u00e9todo para rellenar dicho FileChooserButton con la ruta completa del archivo correspondiente; sin embargo, a veces (no siempre) fallaba, quedando el widget vac\u00edo. Tras hacer varias pruebas llegu\u00e9 a la conclusi\u00f3n de que era totalmente aleatorio: no depend\u00eda de la longitud del nombre, ni del directorio en que se encontrase, ni del n\u00famero de niveles&#8230; el mismo archivo a veces aparec\u00eda correctamente en el widget y otras veces no. Con Ubuntu 7.04 (que usa GTK 2.10) dicho fallo no ocurr\u00eda (que yo recordase, al menos).<\/p>\n<p>Dado que no ten\u00eda claro si el error estaba en GTK o en los bindings para Python (PyGTK), durante el fin de semana hice un peque\u00f1o programa de prueba en C. El resultado es que, efectivamente, el error es de GTK. Adem\u00e1s prob\u00e9 el mismo c\u00f3digo en una Ubuntu 7.04 y, tal y como sospechaba, no falla (por lo que vi en la lista de cambios de GTK 2.10 a 2.12, los desarrolladores hicieron muchas mejoras en la clase FileChooser). El problema realmente gordo es que todos los intentos por esquivar el problema han fallado, lo que significa que mientras no lo corrijan, DeVeDe no funcionar\u00e1 correctamente \ud83d\ude41<\/p>\n<p>De momento <a target=\"_blank\" href=\"http:\/\/bugzilla.gnome.org\/show_bug.cgi?id=497770\">he notificado el bug<\/a> y he a\u00f1adido una nota en la FAQ de DeVeDe. Ma\u00f1ana o pasado (cuando la cabeza deje de darme vueltas) publicar\u00e9 la nueva versi\u00f3n.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Parece que estoy incubando algo. Espero que sea un simple resfriado y no una gripe. En este momento, despu\u00e9s de tomarme una aspirina, ya estoy mejor, por eso aprovecho para a\u00f1adir una nueva entradilla aqu\u00ed. Hace unos d\u00edas, mientras ultimaba la nueva versi\u00f3n de DeVeDe, encontr\u00e9 un molesto bug en el widget Gtk.FileChooserButton; en concreto &hellip; <a href=\"https:\/\/blog.rastersoft.com\/?p=34\" class=\"more-link\">Seguir leyendo <span class=\"screen-reader-text\">Bugs y trancazos<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-34","post","type-post","status-publish","format-standard","hentry","category-sin-categoria"],"_links":{"self":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts\/34","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=34"}],"version-history":[{"count":0,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts\/34\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=34"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=34"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=34"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}