Bug 56046

Summary: [Qt] Text layout is broken on Symbian
Product: WebKit Reporter: Viatcheslav Ostapenko <ostap73>
Component: Layout and RenderingAssignee: Viatcheslav Ostapenko <ostap73>
Status: RESOLVED FIXED    
Severity: Major CC: abarth, commit-queue, dbates, eric, laszlo.gombos, luiz, nlandry, skyul, webkit.review.bot, yong.li.webkit
Priority: P2 Keywords: Qt
Version: 528+ (Nightly build)   
Hardware: S60 Hardware   
OS: S60 3rd edition   
Attachments:
Description Flags
Change bitfield integers to be signed by default on RVCT compiler. none

Description Viatcheslav Ostapenko 2011-03-09 12:43:11 PST
Load any page that has text on Symbian device and text is not rendered.

Appeared to be compiler implementation difference. RVCT compiler treats bitfields as unsigned by default and because of this in RenderBlock:lineHeight comparison "m_lineHeight == -1" is always false .

There are number of other places in webkit where integers in bitfields are assumed signed (most compilers have this default).

By quote from C++(2003) standard section 9.6/3 :
“It is implementation-defined whether a plain (neither explicitly signed nor unsigned) char, short, int or long bit-field is signed or unsigned”.
Comment 1 Viatcheslav Ostapenko 2011-03-09 12:53:14 PST
Created attachment 85218 [details]
Change bitfield integers to be signed by default on RVCT compiler.
Comment 2 Laszlo Gombos 2011-03-09 14:47:48 PST
Comment on attachment 85218 [details]
Change bitfield integers to be signed by default on RVCT compiler.

r=me. Great.
Comment 3 Laszlo Gombos 2011-03-09 15:21:10 PST
CCing Nick, Daniel and Kwang as the "RVCT interest group" to make sure that they evaluate if a similar change is needed for their ports.
Comment 4 WebKit Commit Bot 2011-03-10 17:14:15 PST
Comment on attachment 85218 [details]
Change bitfield integers to be signed by default on RVCT compiler.

Clearing flags on attachment: 85218

Committed r80796: <http://trac.webkit.org/changeset/80796>
Comment 5 WebKit Commit Bot 2011-03-10 17:14:21 PST
All reviewed patches have been landed.  Closing bug.
Comment 6 WebKit Review Bot 2011-03-10 19:29:55 PST
http://trac.webkit.org/changeset/80796 might have broken SnowLeopard Intel Release (Tests)
The following tests are not passing:
fast/text/large-text-composed-char-dos.html
Comment 7 Luiz Agostini 2011-03-30 09:38:02 PDT
Revision r80796 cherry-picked into qtwebkit-2.1.x with commit 3ecec08c9c7638a214d0e7c272190a94c27fd5cc <https://gitorious.org/+qtwebkit-developers/webkit/qtwebkit/commit/3ecec08c9c7638a214d0e7c272190a94c27fd5cc>