--- a/webengine/osswebengine/WebCore/css/cssstyleselector.cpp Fri May 08 08:25:06 2009 +0300
+++ b/webengine/osswebengine/WebCore/css/cssstyleselector.cpp Fri Jul 03 15:54:40 2009 +0100
@@ -22,7 +22,6 @@
* Boston, MA 02110-1301, USA.
*/
-#include "config.h"
#include "CSSStyleSelector.h"
#include "CSSBorderImageValue.h"
@@ -225,6 +224,14 @@
static CSSStyleSelector::Encodedurl *currentEncodedURL = 0;
static PseudoState pseudoState;
+struct defaultStyleNACleaner {
+ ~defaultStyleNACleaner() {
+ delete CSSStyleSelector::styleNotYetAvailable;
+ CSSStyleSelector::styleNotYetAvailable = 0;
+ }
+};
+struct defaultStyleNACleaner styleNACleaner;
+
CSSStyleSelector::CSSStyleSelector(Document* doc, const String& userStyleSheet, StyleSheetList *styleSheets, bool _strictParsing)
{
init();
@@ -3626,7 +3633,15 @@
if (id == CSS_VAL_NONE)
appearance = NoAppearance;
else
+#if PLATFORM ( SYMBIAN )
+ {
+ if (id == CSS_VAL_SEARCHFIELD)
+ id = CSS_VAL_TEXTFIELD;
+#endif
appearance = EAppearance(id - CSS_VAL_CHECKBOX + 1);
+#if PLATFORM ( SYMBIAN )
+ }
+#endif
style->setAppearance(appearance);
return;
}
@@ -4990,4 +5005,46 @@
return m_selectorAttrs.contains(attrname.impl());
}
+#if PLATFORM(SYMBIAN)
+void CSSStyleSelector::deleteDefaultStyle()
+{
+ delete defaultStyle;
+ defaultStyle = 0;
+ delete defaultQuirksStyle;
+ defaultQuirksStyle = 0;
+ delete defaultPrintStyle;
+ defaultPrintStyle = 0;
+ delete defaultViewSourceStyle;
+ defaultViewSourceStyle = 0;
+
+ defaultSheet->deref();
+// delete defaultSheet;
+// defaultSheet = 0;
+
+ // styleNotYetAvailable->deref();
+ //goes to overridden delete operator but calls destructor
+ delete styleNotYetAvailable;
+ //release cell allocated because overridder delete does not do that.
+ free(styleNotYetAvailable);
+ styleNotYetAvailable = 0;
+
+ quirksSheet->deref();
+ // delete quirksSheet;
+ // quirksSheet = 0;
+
+ viewSourceSheet->deref();
+ // delete viewSourceSheet;
+ // viewSourceSheet = 0;
+
+#if ENABLE(SVG)
+ svgSheet->deref();
+ // delete svgSheet;
+ // svgSheet = 0;
+#endif
+
+ //*currentEncodedURL->deref(); //static CSSStyleSelector::Encodedurl *currentEncodedURL = 0;
+ pseudoState = PseudoUnknown;
+}
+#endif
+
} // namespace WebCore