Rendering bug in Firefox, threat level: annoyance
There is this rendering bug in Firefox that currently can be classified as an annoyance.
It was discovered during a discussion at the Ubuntu-GR mailing list and reported in June 2008, and at that time it would cause Firefox to crash. Therefore, it was deemed as a security issue, and the bug report was not made public. Just recently, the issue was revisited, current versions of Firefox do not crash, and the security tag was removed. It is quite possible that there is some existing report on the issue, and not being classified as a security bug, it will be easier sort out. Thus, have a look at bug report #441307.
The source of the rendering bug is the HTML code
<HR WIDTH=143165425 ALIGN=RIGHT>
So, you send an HTML e-mail and you add the above code. The code says to show a Horizontal line, with some huge width (here, you simply put 143165425).
Some versions of Firefox respond differently to this rendering bug, which probably relates to a different set of linked libraries. For example, the Firefox 3 found in Ubuntu Linux 8.10 is able to show the e-mail in GMail just fine (though it messes up with other pages). The above screenshots are by Minefield 3.1b2pre (64-bit). The Windows version of Firefox is also affected.
To try out yourself, create a file /tmp/mypoc.html with contents
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN”>
<HTML>
<HEAD>
</HEAD>
<BODY BGCOLOR=”#ffffff”>
<TABLE WIDTH=100% BORDER=0 CELLPADDING=2 CELLSPACING=2 BGCOLOR=”#e0e0e0″>
<TR>
<TD>
<HR WIDTH=143165425 ALIGN=RIGHT>
</TD>
</TR>
</TABLE>
This is a test.
<HR WIDTH=143165425 ALIGN=RIGHT>
Some more text.
</BODY>
</HTML>
Load it up in Firefox. Click to Select All, then Copy. You can then paste in your mailer, when you compose as HTML (for example, with Thunderbird).
Just to reiterate, this issue is currently at level annoyance, unless someone manages to produce an HTML file that can crash Firefox. If you manage to do so, please file a bug report at http://bugzilla.mozilla.org/ and specify the security settting so that the bug gets high priority.
Multimedia support in Ubuntu Linux 6.06
With Ubuntu Linux 6.06, it is much clear how to install those codecs in order to get broad multimedia file support.
In Ubuntu, the multimedia infrastructure is handled by GStreamer; you install GStreamer plugins and any application that uses GStreamer can immediately benefit from the new codec support.
A typical installation of Ubuntu will bring in the free and open-source codecs by default. This includes the base gstreamer plugins package, gstreamer0.10-plugins-base that covers
- /usr/lib/gstreamer-0.10/libgstadder.so
- /usr/lib/gstreamer-0.10/libgstaudioconvert.so
- /usr/lib/gstreamer-0.10/libgstaudiorate.so
- /usr/lib/gstreamer-0.10/libgstaudioresample.so
- /usr/lib/gstreamer-0.10/libgstaudiotestsrc.so
- /usr/lib/gstreamer-0.10/libgstcdparanoia.so
- /usr/lib/gstreamer-0.10/libgstdecodebin.so
- /usr/lib/gstreamer-0.10/libgstffmpegcolorspace.so
- /usr/lib/gstreamer-0.10/libgstogg.so
- /usr/lib/gstreamer-0.10/libgstplaybin.so
- /usr/lib/gstreamer-0.10/libgstsubparse.so
- /usr/lib/gstreamer-0.10/libgsttcp.so
- /usr/lib/gstreamer-0.10/libgsttheora.so
- /usr/lib/gstreamer-0.10/libgsttypefindfunctions.so
- /usr/lib/gstreamer-0.10/libgstvideo4linux.so
- /usr/lib/gstreamer-0.10/libgstvideorate.so
- /usr/lib/gstreamer-0.10/libgstvideoscale.so
- /usr/lib/gstreamer-0.10/libgstvideotestsrc.so
- /usr/lib/gstreamer-0.10/libgstvolume.so
- /usr/lib/gstreamer-0.10/libgstvorbis.so
With a properly encoded multimedia file, you can play music or video with subtitles. Such good codecs are Ogg, Vorbis and Theora. You can also rip CDs; cdparanoia is also there.
By default you also get the good package, gstreamer0.10-plugins-good
It contains
- /usr/lib/gstreamer-0.10/libgst1394.so
- /usr/lib/gstreamer-0.10/libgstaasink.so
- /usr/lib/gstreamer-0.10/libgstalaw.so
- /usr/lib/gstreamer-0.10/libgstalpha.so
- /usr/lib/gstreamer-0.10/libgstapetag.so
- /usr/lib/gstreamer-0.10/libgstavi.so
- /usr/lib/gstreamer-0.10/libgstautodetect.so
- /usr/lib/gstreamer-0.10/libgstcacasink.so
- /usr/lib/gstreamer-0.10/libgstcdio.so
- /usr/lib/gstreamer-0.10/libgsteffectv.so
- /usr/lib/gstreamer-0.10/libgstgoom.so
- /usr/lib/gstreamer-0.10/libgstid3demux.so
- /usr/lib/gstreamer-0.10/libgstlevel.so
- /usr/lib/gstreamer-0.10/libgstefence.so
- /usr/lib/gstreamer-0.10/libgstmulaw.so
- /usr/lib/gstreamer-0.10/libgstossaudio.so
- /usr/lib/gstreamer-0.10/libgstrtp.so
- /usr/lib/gstreamer-0.10/libgstrtsp.so
- /usr/lib/gstreamer-0.10/libgstsmpte.so
- /usr/lib/gstreamer-0.10/libgsttaglib.so
- /usr/lib/gstreamer-0.10/libgstudp.so
- /usr/lib/gstreamer-0.10/libgstvideobox.so
- /usr/lib/gstreamer-0.10/libgstvideoflip.so
- /usr/lib/gstreamer-0.10/libgstwavenc.so
- /usr/lib/gstreamer-0.10/libgstwavparse.so
- /usr/lib/gstreamer-0.10/libgstauparse.so
- /usr/lib/gstreamer-0.10/libgstdebug.so
- /usr/lib/gstreamer-0.10/libgstnavigationtest.so
- /usr/lib/gstreamer-0.10/libgstalphacolor.so
- /usr/lib/gstreamer-0.10/libgstcairo.so
- /usr/lib/gstreamer-0.10/libgstflxdec.so
- /usr/lib/gstreamer-0.10/libgstmatroska.so
- /usr/lib/gstreamer-0.10/libgstvideomixer.so
- /usr/lib/gstreamer-0.10/libgstcutter.so
- /usr/lib/gstreamer-0.10/libgstmultipart.so
- /usr/lib/gstreamer-0.10/libgstflac.so
- /usr/lib/gstreamer-0.10/libgstjpeg.so
- /usr/lib/gstreamer-0.10/libgstpng.so
- /usr/lib/gstreamer-0.10/libgstspeex.so
- /usr/lib/gstreamer-0.10/libgstgconfelements.so
- /usr/lib/gstreamer-0.10/libgstshout2.so
- /usr/lib/gstreamer-0.10/libgstvideobalance.so
- /usr/lib/gstreamer-0.10/libgsticydemux.so
- /usr/lib/gstreamer-0.10/libgstximagesrc.so
- /usr/lib/gstreamer-0.10/libgstannodex.so
- /usr/lib/gstreamer-0.10/libgstgdkpixbuf.so
- /usr/lib/gstreamer-0.10/libgsthalelements.so
- /usr/lib/gstreamer-0.10/libgstdv.so
This includes generic AVI support, access to digital video and Firewire devices, visualisers, the Matroska codec, access to shoutcast servers, the speex audio codec, the flac codec and many more.
At this point, you can install Pitivi, a gstreamer-enabled video editor written in Python that helps you create your own movie. Make sure you install gstreamer0.10-gnonlin which enables non-linear editing in gstreamer.
Up to here you got free and open-source software.
You can continue with more codecs by installing the package gstreamer0.10-plugins-ugly. This package is not part of the official Ubuntu distribution; you need to enable the Universe repository. Use System/Administration/Synaptic Package Manager to install these additional packages.
Ugly are the plugins and codecs that may have distribution problems in some countries.
Ugly includes
- /usr/lib/gstreamer-0.10/libgsta52dec.so
- /usr/lib/gstreamer-0.10/libgstasf.so
- /usr/lib/gstreamer-0.10/libgstdvdlpcmdec.so
- /usr/lib/gstreamer-0.10/libgstdvdread.so
- /usr/lib/gstreamer-0.10/libgstdvdsub.so
- /usr/lib/gstreamer-0.10/libgstiec958.so
- /usr/lib/gstreamer-0.10/libgstmad.so
- /usr/lib/gstreamer-0.10/libgstmpeg2dec.so
- /usr/lib/gstreamer-0.10/libgstmpegaudioparse.so
- /usr/lib/gstreamer-0.10/libgstmpegstream.so
- /usr/lib/gstreamer-0.10/libgstrmdemux.so
- /usr/lib/gstreamer-0.10/libgstsid.so
This package will bring in, among others, DVD playback and subtitle support, ASF file support, MP3 support (MAD package) and MPEG2 video playback.
You can also get MP3 support if you install the gstreamer0.10-fluendo-mp3 plugin which is available from Universe as well. This package is probably free to use in any country thanks to the efforts of the Fluendo team.
It appears that if you install ugly, it is good to install gstreamer0.10-ffmpeg so that you get support for
FFmpeg plugin for GStreamer
This GStreamer plugin supports a large number of audio and video compression
formats through the use of the FFmpeg library. The plugin contains GStreamer
elements for encoding 40+ formats (MPEG, DivX, MPEG4, AC3, DV, …), decoding
90+ formats (AVI, MPEG, OGG, Matroska, ASF, …), demuxing 30+ formats, and
colorspace conversion.
Finally, there is a package gstreamer0.10-plugins-bad with plugins of potentially suboptimal quality. It includes
- /usr/lib/gstreamer-0.10/libgstbz2.so
- /usr/lib/gstreamer-0.10/libgstcdxaparse.so
- /usr/lib/gstreamer-0.10/libgstdtsdec.so
- /usr/lib/gstreamer-0.10/libgstfreeze.so
- /usr/lib/gstreamer-0.10/libgstgsm.so
- /usr/lib/gstreamer-0.10/libgstmms.so
- /usr/lib/gstreamer-0.10/libgstmodplug.so
- /usr/lib/gstreamer-0.10/libgstmusepack.so
- /usr/lib/gstreamer-0.10/libgstqtdemux.so
- /usr/lib/gstreamer-0.10/libgsttrm.so
- /usr/lib/gstreamer-0.10/libgstspeed.so
- /usr/lib/gstreamer-0.10/libgstswfdec.so
- /usr/lib/gstreamer-0.10/libgsttta.so
- /usr/lib/gstreamer-0.10/libgstvideo4linux2.so
- /usr/lib/gstreamer-0.10/libgstwavpack.so
- /usr/lib/gstreamer-0.10/libgstxingheader.so
- /usr/lib/gstreamer-0.10/libgstneonhttpsrc.so
With bad you get GSM audio codec support, MMS support, QT playback support for some formats, Flash (SWF) playing support, Video4Linux2 support, MUSEPACK support and a few more.
Free Alaa!

Alaa is a young prominent Egyptian blogger that was arrested and jailed among 47 activists on 7th May 2006 during a peaceful demonstration in Cairo.
His personal website and blog, shared with his wife Manal, is http://www.manalaa.net/ has the latest news about his condition.
There is a petition by Hands Across the Mideast Support Alliance (HAMSA) to free Alaa, which I copy:
Demand Egyptian Regime Release Alaa from Tora Prison
Alaa Abd El-Fatah is one of Egypt’s most prominent bloggers and free speech advocates. He and his wife Manal run the popular blog BitBucket, which collects posts from dozens of Egyptian blogs and which won a “Best of the Blogs” award in December from Reporters Without Borders.
On Saturday (May 7), Alaa was arrested with a group of activists during a peaceful demonstration outside a Cairo courthouse. The rally denounced disciplinary hearings for two reform judges and arrests of protestors at previous demonstrations. Alaa and a group of other demonstrators were cornered by Egyptian police, and security agents then apparently handpicked individual protestors for arrest.
Alaa seems to have been targeted because of his high profile: he helps organizes the protests and spread the information through the blog aggregator he runs. He is now being held in notorious Tora Prison — and his arrest seems designed to both shut down his blog aggregator and scare other Egyptian bloggers. But you can send a message to the Egyptian government through the petition below (you can edit the petition text), which will generate an email to political leaders who can secure Alaa’s release.
The petition will be sent to:
- Egypt’s Ambassador to the US Nabil Fahmy
- Egyptian Prime Minister Ahmed Nazif
- Egypt’s Interior Minister Habib El Adly
- US Ambassador to Egypt Francis Ricciardone
- US Assistant Secretary of State David Welch
This campaign has been signed 1047[check page for latest figure] times. Click here to see who’s signed.
Join the Campaign
Alaa is speaking (has the mic) at an event about Open-Source software for NGOs in Africa.
GNOME Journal Φεβρουαρίου
Μόλις έγινε διαθέσιμο το GNOME Journal Φεβρουαρίου!
Περιλαμβάνει άρθρα για GStreamer 0.10 (υποσύστημα πολυμέσων), Μάρκετινγκ του GNOME, δεύτερο μέρος για προγραμματισμό σε Cairo και GTK+, SharpConstruct και συνέντευξη με τον Jeff Waugh.
gtkperf, εσάς πόσο γρήγορος είναι ο υπολογιστής σας;
Το gtkperf είναι μια εφαρμογή που μετρά τις αποδόσεις των εφαρμογών που βασίζονται GTK+
Τα παρακάτω αποτελέσματα είναι από το φορητό μου υπολογιστή (πάναργος, κάρτα γραφικών Intel Extreme κάτι), με χρήση της έκδοσης 2.7.0beta της βιβλιοθήκης gtk+, με ενσωμάτωση glitz/cairo.
GtkPerf 0.30 – Starting testing: Mon Jun 27 20:31:16 2005
GtkEntry – time: 0,09
GtkComboBox – time: 1,74
GtkComboBoxEntry – time: 1,71
GtkSpinButton – time: 0,15
GtkProgressBar – time: 0,10
GtkToggleButton – time: 0,39
GtkCheckButton – time: 0,36
GtkRadioButton – time: 0,39
GtkTextView – Add text – time: 1,61
GtkTextView – Scroll – time: 1,31
GtkDrawingArea – Lines – time: 1,94
GtkDrawingArea – Circles – time: 3,50
GtkDrawingArea – Text – time: 3,65
GtkDrawingArea – Pixbufs – time: 1,50
—
Total time: 18,43



