Title: [134781] trunk
Revision
134781
Author
[email protected]
Date
2012-11-15 08:59:27 -0800 (Thu, 15 Nov 2012)

Log Message

[EFL] Bump Harfbuzz to allow fixing bug 101009 on EFL
https://bugs.webkit.org/show_bug.cgi?id=101323

Reviewed by Martin Robinson.

Source/WebCore:

Removing ifdef since we bumped Harfbuzz dependency. This is the
real fix replacing the previous workaround of having a Chromium
specific ifdef here, since Chromium uses a newer HarfBuzz version
already.

No new tests, covered by css3/flexbox/inline-flex-crash.html
which will not crash anymore even with the ifdef removed.

* platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp:
(WebCore::HarfBuzzShaper::shapeHarfBuzzRuns):

Tools:

Bumping Harfbuzz to newer version so that we can remove the
ifdef round the fix for bug 101009 for EFL, too.
We're using the zip snapshot since jhbuild can fallback to the previously
downloaded blob in case of network failures which leads to better
buildbot robustness. This zip snapshot currently needs to be locally
patched to fix ICU detection on systems that don't have icu pkg-config files.
The patch is suggested for merging into HarfBuzz. We can remove it locally
once it's accepted into HarfBuzz upstream.

* efl/patches/harfbuzz-icu-detection-fix.patch: Applied after retrieving source to fix harfbuzz detection on systems that don't have pkg-config files for it.
* efl/jhbuild.modules: Bumping harfbuzz version.

Modified Paths

Added Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (134780 => 134781)


--- trunk/Source/WebCore/ChangeLog	2012-11-15 16:50:57 UTC (rev 134780)
+++ trunk/Source/WebCore/ChangeLog	2012-11-15 16:59:27 UTC (rev 134781)
@@ -1,3 +1,21 @@
+2012-11-15  Dominik Röttsches  <[email protected]>
+
+        [EFL] Bump Harfbuzz to allow fixing bug 101009 on EFL
+        https://bugs.webkit.org/show_bug.cgi?id=101323
+
+        Reviewed by Martin Robinson.
+
+        Removing ifdef since we bumped Harfbuzz dependency. This is the
+        real fix replacing the previous workaround of having a Chromium
+        specific ifdef here, since Chromium uses a newer HarfBuzz version
+        already.
+
+        No new tests, covered by css3/flexbox/inline-flex-crash.html
+        which will not crash anymore even with the ifdef removed.
+
+        * platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp:
+        (WebCore::HarfBuzzShaper::shapeHarfBuzzRuns):
+
 2012-11-15  Andreas Kling  <[email protected]>
 
         REGRESSION(r134408): Heap-use-after-free in WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement().

Modified: trunk/Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp (134780 => 134781)


--- trunk/Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp	2012-11-15 16:50:57 UTC (rev 134780)
+++ trunk/Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp	2012-11-15 16:59:27 UTC (rev 134781)
@@ -328,13 +328,10 @@
         if (shouldSetDirection)
             hb_buffer_set_direction(harfbuzzBuffer.get(), currentRun->rtl() ? HB_DIRECTION_RTL : HB_DIRECTION_LTR);
 
-        // This #if should be removed after all ports update harfbuzz-ng.
-#if PLATFORM(CHROMIUM)
         // Add a space as pre-context to the buffer. This prevents showing dotted-circle
         // for combining marks at the beginning of runs.
         static const uint16_t preContext = ' ';
         hb_buffer_add_utf16(harfbuzzBuffer.get(), &preContext, 1, 1, 0);
-#endif
 
         if (m_font->isSmallCaps() && u_islower(m_normalizedBuffer[currentRun->startIndex()])) {
             String upperText = String(m_normalizedBuffer.get() + currentRun->startIndex(), currentRun->numCharacters());

Modified: trunk/Tools/ChangeLog (134780 => 134781)


--- trunk/Tools/ChangeLog	2012-11-15 16:50:57 UTC (rev 134780)
+++ trunk/Tools/ChangeLog	2012-11-15 16:59:27 UTC (rev 134781)
@@ -1,3 +1,22 @@
+2012-11-15  Dominik Röttsches  <[email protected]>
+
+        [EFL] Bump Harfbuzz to allow fixing bug 101009 on EFL
+        https://bugs.webkit.org/show_bug.cgi?id=101323
+
+        Reviewed by Martin Robinson.
+
+        Bumping Harfbuzz to newer version so that we can remove the
+        ifdef round the fix for bug 101009 for EFL, too.
+        We're using the zip snapshot since jhbuild can fallback to the previously
+        downloaded blob in case of network failures which leads to better
+        buildbot robustness. This zip snapshot currently needs to be locally
+        patched to fix ICU detection on systems that don't have icu pkg-config files.
+        The patch is suggested for merging into HarfBuzz. We can remove it locally
+        once it's accepted into HarfBuzz upstream.
+
+        * efl/patches/harfbuzz-icu-detection-fix.patch: Applied after retrieving source to fix harfbuzz detection on systems that don't have pkg-config files for it.
+        * efl/jhbuild.modules: Bumping harfbuzz version.
+
 2012-11-15  Alexey Proskuryakov  <[email protected]>
 
         [Mac] Implement WTR --no-timeout-at-all option

Modified: trunk/Tools/efl/jhbuild.modules (134780 => 134781)


--- trunk/Tools/efl/jhbuild.modules	2012-11-15 16:50:57 UTC (rev 134780)
+++ trunk/Tools/efl/jhbuild.modules	2012-11-15 16:59:27 UTC (rev 134781)
@@ -153,11 +153,12 @@
   </autotools>
 
  <autotools id="harfbuzz" autogen-sh="configure">
-   <branch module="software/harfbuzz/release/harfbuzz-0.9.2.tar.bz2" version="0.9.2"
-           checkoutdir="harfbuzz-0.9.2"
+   <branch module="software/harfbuzz/release/harfbuzz-0.9.6.tar.bz2" version="0.9.6"
+           checkoutdir="harfbuzz-0.9.6"
            repo="freedesktop.org"
-           hash="sha256:c9b581d6357a32043b84ec78179390b582448de790deb487dfdb90b632dc8558"
-           md5sum="f1c1a2793b44b4d6613f58cc92caa366">
+           hash="sha256:394a849d6061993018754b0cc04110891ad215e3df3f6953b75dcc55a11f9d9b"
+           md5sum="f3a100a0512c185b211a0deb4790c34c">
+     <patch file="harfbuzz-icu-detection-fix.patch" strip="1" />
    </branch>
  </autotools>
 

Added: trunk/Tools/efl/patches/harfbuzz-icu-detection-fix.patch (0 => 134781)


--- trunk/Tools/efl/patches/harfbuzz-icu-detection-fix.patch	                        (rev 0)
+++ trunk/Tools/efl/patches/harfbuzz-icu-detection-fix.patch	2012-11-15 16:59:27 UTC (rev 134781)
@@ -0,0 +1,36 @@
+diff --git a/configure.ac b/configure.ac
+index b1948f1..9ae69dd 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -184,6 +184,31 @@ fi
+ AM_CONDITIONAL(HAVE_ICU_LE, $have_icu_le)
+ 
+ dnl ==========================================================================
++dnl Fallback to icu-config if ICU pkg-config files could not be found
++dnl ==========================================================================
++
++if test "$have_icu" != "true"; then
++    AC_PATH_PROG(icu_config, icu-config, no)
++    AC_MSG_CHECKING([for ICU by using icu-config fallback])
++    if test "$icu_config" != "no"; then
++        # We don't use --cflags as this gives us a lot of things that we don't
++        # necessarily want, like debugging and optimization flags
++        # See man (1) icu-config for more info.
++        ICU_CFLAGS=`$icu_config --cppflags`
++        ICU_LIBS=`$icu_config --ldflags-libsonly --ldflags-layout`
++        AC_SUBST(ICU_CFLAGS)
++        AC_SUBST(ICU_LIBS)
++        AC_DEFINE(HAVE_ICU_LE, 1, [Have ICU Layout Engine library])
++        AC_DEFINE(HAVE_ICU, 1, [Have ICU library])
++        AM_CONDITIONAL(HAVE_ICU, true)
++        AM_CONDITIONAL(HAVE_ICU_LE, true)
++        AC_MSG_RESULT([yes])
++    else
++        AC_MSG_RESULT([no])
++    fi
++fi
++
++dnl ==========================================================================
+ 
+ PKG_CHECK_MODULES(GRAPHITE2, graphite2, have_graphite=true, have_graphite=false)
+ if $have_graphite; then
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to