Title: [112776] trunk/Source/WebCore
- Revision
- 112776
- Author
- rn...@webkit.org
- Date
- 2012-03-30 22:16:34 -0700 (Fri, 30 Mar 2012)
Log Message
Add a compile assert for the size of RenderText
https://bugs.webkit.org/show_bug.cgi?id=82780
Reviewed by Dirk Pranke.
Added an assertion. Also moved m_maxWidth, m_beginMinWidth, and m_endMinWidth
to right beneath m_minWidth so that gcc on GTK+ can pack floats properly.
* rendering/RenderText.cpp:
(SameSizeAsRenderText):
(WebCore):
* rendering/RenderText.h:
(RenderText):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (112775 => 112776)
--- trunk/Source/WebCore/ChangeLog 2012-03-31 05:16:28 UTC (rev 112775)
+++ trunk/Source/WebCore/ChangeLog 2012-03-31 05:16:34 UTC (rev 112776)
@@ -1,5 +1,21 @@
2012-03-30 Ryosuke Niwa <rn...@webkit.org>
+ Add a compile assert for the size of RenderText
+ https://bugs.webkit.org/show_bug.cgi?id=82780
+
+ Reviewed by Dirk Pranke.
+
+ Added an assertion. Also moved m_maxWidth, m_beginMinWidth, and m_endMinWidth
+ to right beneath m_minWidth so that gcc on GTK+ can pack floats properly.
+
+ * rendering/RenderText.cpp:
+ (SameSizeAsRenderText):
+ (WebCore):
+ * rendering/RenderText.h:
+ (RenderText):
+
+2012-03-30 Ryosuke Niwa <rn...@webkit.org>
+
Add a compile assert for the size of ScrollableArea
https://bugs.webkit.org/show_bug.cgi?id=82822
Modified: trunk/Source/WebCore/rendering/RenderText.cpp (112775 => 112776)
--- trunk/Source/WebCore/rendering/RenderText.cpp 2012-03-31 05:16:28 UTC (rev 112775)
+++ trunk/Source/WebCore/rendering/RenderText.cpp 2012-03-31 05:16:34 UTC (rev 112776)
@@ -53,6 +53,15 @@
namespace WebCore {
+class SameSizeAsRenderText : public RenderObject {
+ float widths[4];
+ String text;
+ void* pointers[2];
+ uint32_t bitfields : 16;
+};
+
+COMPILE_ASSERT(sizeof(RenderText) == sizeof(SameSizeAsRenderText), RenderText_should_stay_small);
+
class SecureTextTimer;
typedef HashMap<RenderText*, SecureTextTimer*> SecureTextTimerMap;
static SecureTextTimerMap* gSecureTextTimers = 0;
@@ -127,12 +136,12 @@
RenderText::RenderText(Node* node, PassRefPtr<StringImpl> str)
: RenderObject(node)
, m_minWidth(-1)
+ , m_maxWidth(-1)
+ , m_beginMinWidth(0)
+ , m_endMinWidth(0)
, m_text(str)
, m_firstTextBox(0)
, m_lastTextBox(0)
- , m_maxWidth(-1)
- , m_beginMinWidth(0)
- , m_endMinWidth(0)
, m_hasTab(false)
, m_linesDirty(false)
, m_containsReversedText(false)
Modified: trunk/Source/WebCore/rendering/RenderText.h (112775 => 112776)
--- trunk/Source/WebCore/rendering/RenderText.h 2012-03-31 05:16:28 UTC (rev 112775)
+++ trunk/Source/WebCore/rendering/RenderText.h 2012-03-31 05:16:34 UTC (rev 112776)
@@ -166,16 +166,15 @@
void secureText(UChar mask);
float m_minWidth; // here to minimize padding in 64-bit.
+ float m_maxWidth;
+ float m_beginMinWidth;
+ float m_endMinWidth;
String m_text;
InlineTextBox* m_firstTextBox;
InlineTextBox* m_lastTextBox;
- float m_maxWidth;
- float m_beginMinWidth;
- float m_endMinWidth;
-
bool m_hasBreakableChar : 1; // Whether or not we can be broken into multiple lines.
bool m_hasBreak : 1; // Whether or not we have a hard break (e.g., <pre> with '\n').
bool m_hasTab : 1; // Whether or not we have a variable width tab character (e.g., <pre> with '\t').
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes