[Pkg-chromium-commit] [pkg-chromium] 01/05: release 60.0.3112.78-1~deb9u1

Michael Gilbert mgilbert at moszumanska.debian.org
Sun Nov 5 23:08:50 UTC 2017


This is an automated email from the git hooks/post-receive script.

mgilbert pushed a commit to branch stretch
in repository pkg-chromium.

commit fce12bcb167fc30e43acd08138df303cdd0baebc
Author: Michael Gilbert <mgilbert at debian.org>
Date:   Wed Sep 27 02:01:44 2017 +0000

    release 60.0.3112.78-1~deb9u1
---
 debian/changelog                                 |  35 ++++
 debian/clean                                     |   2 +
 debian/patches/disable/external-components.patch |   7 +-
 debian/patches/disable/google-api-warning.patch  |   2 +-
 debian/patches/fixes/dma.patch                   |  14 --
 debian/patches/fixes/gpu-timeout.patch           |   2 +-
 debian/patches/gn/parallel.patch                 |   4 +-
 debian/patches/gn/scheduler.patch                |  13 ++
 debian/patches/series                            |   4 +-
 debian/patches/system/event.patch                |  43 +++--
 debian/patches/system/gtk2.patch                 |  61 +++++++
 debian/patches/system/icu.patch                  | 197 +----------------------
 debian/patches/system/nspr.patch                 |  22 +--
 debian/patches/system/vpx.patch                  |  26 ++-
 debian/rules                                     |   3 +
 debian/scripts/unbundle                          |   6 +-
 16 files changed, 183 insertions(+), 258 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 6d3ee97..f0a4f74 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,38 @@
+chromium-browser (60.0.3112.78-1~deb9u1) stretch-security; urgency=medium
+
+  * New upstream stable release.
+    - CVE-2017-5087: Sandbox Escape in IndexedDB. Reported by Ned Williamson
+    - CVE-2017-5088: Out of bounds read in V8. Reported by Xiling Gong
+    - CVE-2017-5089: Domain spoofing in Omnibox. Reported by Michał Bentkowski
+    - CVE-2017-5091: Use after free in IndexedDB. Reported by Ned Williamson
+    - CVE-2017-5092: Use after free in PPAPI. Reported by Yu Zhou, Yuan Deng
+    - CVE-2017-5093: UI spoofing in Blink. Reported by Luan Herrera
+    - CVE-2017-5094: Type confusion in extensions. Reported by Anonymous
+    - CVE-2017-5095: Out-of-bounds write in PDFium. Reported by Anonymous
+    - CVE-2017-5096: User information leak via Android intents. Reported by
+      Takeshi Terada
+    - CVE-2017-5097: Out-of-bounds read in Skia. Reported by Anonymous
+    - CVE-2017-5098: Use after free in V8. Reported by Jihoon Kim
+    - CVE-2017-5099: Out-of-bounds write in PPAPI. Reported by Yuan Deng, Yu
+      Zhou
+    - CVE-2017-5100: Use after free in Chrome Apps. Reported by Anonymous
+    - CVE-2017-5101: URL spoofing in OmniBox. Reported by Luan Herrera
+    - CVE-2017-5102: Uninitialized use in Skia. Reported by Anonymous
+    - CVE-2017-5103: Uninitialized use in Skia. Reported by Anonymous
+    - CVE-2017-5104: UI spoofing in browser. Reported by Khalil Zhani
+    - CVE-2017-5105: URL spoofing in OmniBox. Reported by Rayyan Bijoora
+    - CVE-2017-5106: URL spoofing in OmniBox. Reported by Jack Zac
+    - CVE-2017-5107: User information leak via SVG. Reported by David
+      Kohlbrenner
+    - CVE-2017-5108: Type confusion in PDFium. Reported by Guang Gong
+    - CVE-2017-5109: UI spoofing in browser. Reported by José María Acuña
+      Morgado
+    - CVE-2017-5110: UI spoofing in payments dialog. Reported by xisigr
+    - CVE-2017-7000: Pointer disclosure in SQLite. Reported by Chaitin Security
+      Research Lab
+
+ -- Michael Gilbert <mgilbert at debian.org>  Sat, 29 Jul 2017 19:56:20 +0000
+
 chromium-browser (59.0.3071.86-1) unstable; urgency=medium
 
   * New upstream stable release.
diff --git a/debian/clean b/debian/clean
index 9a904cf..c41c88c 100644
--- a/debian/clean
+++ b/debian/clean
@@ -20,3 +20,5 @@ third_party/snappy/BUILD.gn
 third_party/yasm/yasm_assemble.gni
 third_party/zlib/BUILD.gn
 third_party/icu/BUILD.gn
+third_party/opus/BUILD.gn
+third_party/freetype/BUILD.gn
diff --git a/debian/patches/disable/external-components.patch b/debian/patches/disable/external-components.patch
index f81835a..02a394f 100644
--- a/debian/patches/disable/external-components.patch
+++ b/debian/patches/disable/external-components.patch
@@ -3,7 +3,7 @@ description: disable loading external components
 
 --- a/chrome/browser/extensions/external_component_loader.cc
 +++ b/chrome/browser/extensions/external_component_loader.cc
-@@ -41,21 +41,6 @@ ExternalComponentLoader::~ExternalCompon
+@@ -38,33 +38,12 @@ ExternalComponentLoader::~ExternalCompon
  
  void ExternalComponentLoader::StartLoading() {
    prefs_.reset(new base::DictionaryValue());
@@ -23,11 +23,10 @@ description: disable loading external components
 -  }
 -#endif
  
- #if defined(ENABLE_MEDIA_ROUTER)
    if (media_router::MediaRouterEnabled(profile_) &&
-@@ -64,12 +49,6 @@ void ExternalComponentLoader::StartLoadi
+       FeatureSwitch::load_media_router_component_extension()->IsEnabled()) {
+     AddExternalExtension(extension_misc::kMediaRouterStableExtensionId);
    }
- #endif  // defined(ENABLE_MEDIA_ROUTER)
  
 -#if BUILDFLAG(ENABLE_APP_LIST) && defined(OS_CHROMEOS)
 -  std::string google_now_extension_id;
diff --git a/debian/patches/disable/google-api-warning.patch b/debian/patches/disable/google-api-warning.patch
index 8932809..6f05a6f 100644
--- a/debian/patches/disable/google-api-warning.patch
+++ b/debian/patches/disable/google-api-warning.patch
@@ -2,7 +2,7 @@ description: disable the google api key warning when those aren't found
 
 --- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
 +++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
-@@ -838,8 +838,6 @@ void StartupBrowserCreatorImpl::AddInfoB
+@@ -824,8 +824,6 @@ void StartupBrowserCreatorImpl::AddInfoB
        !command_line_.HasSwitch(switches::kTestType) &&
        !command_line_.HasSwitch(switches::kEnableAutomation)) {
      chrome::ShowBadFlagsPrompt(browser);
diff --git a/debian/patches/fixes/dma.patch b/debian/patches/fixes/dma.patch
deleted file mode 100644
index 7a36a4c..0000000
--- a/debian/patches/fixes/dma.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-description: dma-buf.h is not provided by linux-libc-dev until version 4.11 in debian
-author: Michael Gilbert <mgilbert at debian.org>
-
---- a/ui/gfx/linux/client_native_pixmap_dmabuf.cc
-+++ b/ui/gfx/linux/client_native_pixmap_dmabuf.cc
-@@ -17,7 +17,7 @@
- #include "base/strings/stringprintf.h"
- #include "base/trace_event/trace_event.h"
- 
--#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0)
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
- #include <linux/types.h>
- 
- struct local_dma_buf_sync {
diff --git a/debian/patches/fixes/gpu-timeout.patch b/debian/patches/fixes/gpu-timeout.patch
index 63effda..bff34f3 100644
--- a/debian/patches/fixes/gpu-timeout.patch
+++ b/debian/patches/fixes/gpu-timeout.patch
@@ -4,7 +4,7 @@ bug-debian: http://bugs.debian.org/781940
 
 --- a/gpu/ipc/service/gpu_watchdog_thread.cc
 +++ b/gpu/ipc/service/gpu_watchdog_thread.cc
-@@ -41,7 +41,7 @@ const int kGpuTimeout = 30000;
+@@ -43,7 +43,7 @@ const int kGpuTimeout = 30000;
  // infected machines.
  const int kGpuTimeout = 15000;
  #else
diff --git a/debian/patches/gn/parallel.patch b/debian/patches/gn/parallel.patch
index b0d5510..3defa81 100644
--- a/debian/patches/gn/parallel.patch
+++ b/debian/patches/gn/parallel.patch
@@ -3,7 +3,7 @@ author: Michael Gilbert <mgilbert at debian.org>
 
 --- a/tools/gn/bootstrap/bootstrap.py
 +++ b/tools/gn/bootstrap/bootstrap.py
-@@ -102,6 +102,7 @@ def main(argv):
+@@ -103,6 +103,7 @@ def main(argv):
    parser.add_option('--gn-gen-args', help='Args to pass to gn gen --args')
    parser.add_option('-v', '--verbose', action='store_true',
                      help='Log more details')
@@ -11,7 +11,7 @@ author: Michael Gilbert <mgilbert at debian.org>
    options, args = parser.parse_args(argv)
  
    if args:
-@@ -199,6 +200,8 @@ def build_gn_with_ninja_manually(tempdir
+@@ -200,6 +201,8 @@ def build_gn_with_ninja_manually(tempdir
    cmd = ['ninja', '-C', tempdir]
    if options.verbose:
      cmd.append('-v')
diff --git a/debian/patches/gn/scheduler.patch b/debian/patches/gn/scheduler.patch
new file mode 100644
index 0000000..6d1dcb1
--- /dev/null
+++ b/debian/patches/gn/scheduler.patch
@@ -0,0 +1,13 @@
+description: add file needed to build gn
+author: Michael Gilbert <mgilbert at debian.org>
+
+--- a/tools/gn/bootstrap/bootstrap.py
++++ b/tools/gn/bootstrap/bootstrap.py
+@@ -490,6 +490,7 @@ def write_gn_ninja(path, root_gen_dir, o
+       'base/sys_info.cc',
+       'base/task_runner.cc',
+       'base/task_scheduler/delayed_task_manager.cc',
++      'base/task_scheduler/environment_config.cc',
+       'base/task_scheduler/post_task.cc',
+       'base/task_scheduler/priority_queue.cc',
+       'base/task_scheduler/scheduler_lock_impl.cc',
diff --git a/debian/patches/series b/debian/patches/series
index 0b251e6..03e72a1 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,13 +3,13 @@ master-preferences.patch
 
 gn/parallel.patch
 gn/buildflags.patch
+gn/scheduler.patch
 
 disable/promo.patch
 disable/google-api-warning.patch
 disable/third-party-cookies.patch
 disable/external-components.patch
 
-fixes/dma.patch
 fixes/ps-print.patch
 fixes/gpu-timeout.patch
 fixes/widevine-revision.patch
@@ -20,4 +20,4 @@ system/vpx.patch
 system/nspr.patch
 system/event.patch
 system/libxml.patch
-system/ffmpeg.patch
+system/gtk2.patch
diff --git a/debian/patches/system/event.patch b/debian/patches/system/event.patch
index d98d720..ab4c496 100644
--- a/debian/patches/system/event.patch
+++ b/debian/patches/system/event.patch
@@ -14,8 +14,8 @@ author: Michael Gilbert <mgilbert at debian.org>
  #include "webrtc/base/task_queue_posix.h"
 --- a/tools/gn/bootstrap/bootstrap.py
 +++ b/tools/gn/bootstrap/bootstrap.py
-@@ -578,29 +578,9 @@ def write_gn_ninja(path, root_gen_dir, o
-         'base/time/time_posix.cc',
+@@ -609,26 +609,6 @@ def write_gn_ninja(path, root_gen_dir, o
+         'base/time/time_now_posix.cc',
          'base/trace_event/heap_profiler_allocation_register_posix.cc',
      ])
 -    static_libraries['libevent'] = {
@@ -39,29 +39,26 @@ author: Michael Gilbert <mgilbert at debian.org>
 -        'cflags': cflags + ['-DHAVE_CONFIG_H'],
 -    }
  
-   if is_linux:
--    libs.extend(['-lrt', '-latomic', '-lnspr4'])
-+    libs.extend(['-lrt', '-latomic', '-lnspr4', '-levent'])
+   if is_linux or is_aix:
      ldflags.extend(['-pthread'])
- 
-     static_libraries['xdg_user_dirs'] = {
-@@ -627,13 +607,6 @@ def write_gn_ninja(path, root_gen_dir, o
-         'base/threading/platform_thread_linux.cc',
-         'base/trace_event/malloc_dump_provider.cc',
-     ])
--    static_libraries['libevent']['include_dirs'].extend([
--        os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'linux')
--    ])
--    static_libraries['libevent']['sources'].extend([
--        'base/third_party/libevent/epoll.c',
--    ])
--
- 
-   if is_mac:
-     static_libraries['base']['sources'].extend([
-@@ -663,12 +636,6 @@ def write_gn_ninja(path, root_gen_dir, o
+@@ -660,13 +640,7 @@ def write_gn_ninja(path, root_gen_dir, o
+         'base/allocator/allocator_shim.cc',
+         'base/allocator/allocator_shim_default_dispatch_to_glibc.cc',
+       ])
+-      libs.extend(['-lrt', '-latomic', '-lnspr4'])
+-      static_libraries['libevent']['include_dirs'].extend([
+-          os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'linux')
+-      ])
+-      static_libraries['libevent']['sources'].extend([
+-         'base/third_party/libevent/epoll.c',
+-      ])
++      libs.extend(['-lrt', '-latomic', '-lnspr4', '-levent'])
+     else:
+       libs.extend(['-lrt'])
+       static_libraries['base']['sources'].extend([
+@@ -703,12 +677,6 @@ def write_gn_ninja(path, root_gen_dir, o
+         'base/time/time_mac.cc',
          'base/threading/platform_thread_mac.mm',
-         'base/trace_event/malloc_dump_provider.cc',
      ])
 -    static_libraries['libevent']['include_dirs'].extend([
 -        os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'mac')
diff --git a/debian/patches/system/gtk2.patch b/debian/patches/system/gtk2.patch
new file mode 100644
index 0000000..993f47c
--- /dev/null
+++ b/debian/patches/system/gtk2.patch
@@ -0,0 +1,61 @@
+description: scale factor calculation support for gtk2
+origin: implementation from chromium 59.0.3071.86
+
+--- a/chrome/browser/ui/libgtkui/gtk_ui.cc
++++ b/chrome/browser/ui/libgtkui/gtk_ui.cc
+@@ -315,13 +315,55 @@ gfx::FontRenderParams GetGtkFontRenderPa
+   return params;
+ }
+ 
++float GtkDpiToScaleFactor(int dpi) {
++  // GTK multiplies the DPI by 1024 before storing it.
++  return dpi / (1024 * kDefaultDPI);
++}
++
++gint GetGdkScreenSettingInt(const char* setting_name) {
++  GValue value = G_VALUE_INIT;
++  g_value_init(&value, G_TYPE_INT);
++  if (!gdk_screen_get_setting(gdk_screen_get_default(), setting_name, &value))
++    return -1;
++  return g_value_get_int(&value);
++}
++
++float GetScaleFromGdkScreenSettings() {
++  gint window_scale = GetGdkScreenSettingInt("gdk-window-scaling-factor");
++  if (window_scale <= 0)
++    return -1;
++  gint font_dpi = GetGdkScreenSettingInt("gdk-unscaled-dpi");
++  if (font_dpi <= 0)
++    return -1;
++  return window_scale * GtkDpiToScaleFactor(font_dpi);
++}
++
++float GetScaleFromXftDPI() {
++  GtkSettings* gtk_settings = gtk_settings_get_default();
++  CHECK(gtk_settings);
++  gint gtk_dpi = -1;
++  g_object_get(gtk_settings, "gtk-xft-dpi", &gtk_dpi, nullptr);
++  if (gtk_dpi <= 0)
++    return -1;
++  return GtkDpiToScaleFactor(gtk_dpi);
++}
++
+ float GetRawDeviceScaleFactor() {
+   if (display::Display::HasForceDeviceScaleFactor())
+     return display::Display::GetForcedDeviceScaleFactor();
+ 
+   GdkScreen* screen = gdk_screen_get_default();
++#if GTK_MAJOR_VERSION == 2
++  float scale = GetScaleFromGdkScreenSettings();
++  if (scale <= 0) {
++    scale = GetScaleFromXftDPI();
++    if (scale <= 0)
++      scale = 1;
++  }
++#else
+   gint scale = gdk_screen_get_monitor_scale_factor(
+       screen, gdk_screen_get_primary_monitor(screen));
++#endif
+   gdouble resolution = gdk_screen_get_resolution(screen);
+   return resolution <= 0 ? scale : resolution * scale / kDefaultDPI;
+ }
diff --git a/debian/patches/system/icu.patch b/debian/patches/system/icu.patch
index 2f42a98..c35c1b7 100644
--- a/debian/patches/system/icu.patch
+++ b/debian/patches/system/icu.patch
@@ -3,8 +3,8 @@ author: Michael Gilbert <mgilbert at debian.org>
 
 --- a/BUILD.gn
 +++ b/BUILD.gn
-@@ -676,8 +676,7 @@ group("gn_all") {
-     deps += [ "//ui/ozone/demo" ]
+@@ -657,8 +657,7 @@ group("gn_all") {
+     }
    }
  
 -  if ((is_linux && !is_chromeos && !is_chromecast) || (is_win && use_drfuzz) ||
@@ -13,196 +13,3 @@ author: Michael Gilbert <mgilbert at debian.org>
      deps += [
        "//testing/libfuzzer/fuzzers",
        "//testing/libfuzzer/tests:libfuzzer_tests",
---- a/third_party/WebKit/Source/platform/wtf/text/TextCodecICU.cpp
-+++ b/third_party/WebKit/Source/platform/wtf/text/TextCodecICU.cpp
-@@ -71,8 +71,8 @@ void TextCodecICU::RegisterEncodingNames
-     const char* primary_standard = "HTML";
-     const char* secondary_standard = "MIME";
- #else
--    const char* primaryStandard = "MIME";
--    const char* secondaryStandard = "IANA";
-+    const char* primary_standard = "MIME";
-+    const char* secondary_standard = "IANA";
- #endif
-     const char* standard_name =
-         ucnv_getStandardName(name, primary_standard, &error);
-@@ -94,20 +94,20 @@ void TextCodecICU::RegisterEncodingNames
- //    encoding for encoding GB_2312-80 and several others. So, we need to
- //    override this behavior, too.
- #if defined(USING_SYSTEM_ICU)
--    if (!strcmp(standardName, "GB2312") || !strcmp(standardName, "GB_2312-80"))
--      standardName = "GBK";
-+    if (!strcmp(standard_name, "GB2312") || !strcmp(standard_name, "GB_2312-80"))
-+      standard_name = "GBK";
-     // Similarly, EUC-KR encodings all map to an extended version, but
-     // per HTML5, the canonical name still should be EUC-KR.
--    else if (!strcmp(standardName, "EUC-KR") ||
--             !strcmp(standardName, "KSC_5601") ||
--             !strcmp(standardName, "cp1363"))
--      standardName = "EUC-KR";
-+    else if (!strcmp(standard_name, "EUC-KR") ||
-+             !strcmp(standard_name, "KSC_5601") ||
-+             !strcmp(standard_name, "cp1363"))
-+      standard_name = "EUC-KR";
-     // And so on.
--    else if (!strcasecmp(standardName, "iso-8859-9"))
-+    else if (!strcasecmp(standard_name, "iso-8859-9"))
-       // This name is returned in different case by ICU 3.2 and 3.6.
--      standardName = "windows-1254";
--    else if (!strcmp(standardName, "TIS-620"))
--      standardName = "windows-874";
-+      standard_name = "windows-1254";
-+    else if (!strcmp(standard_name, "TIS-620"))
-+      standard_name = "windows-874";
- #endif
- 
-     registrar(standard_name, standard_name);
-@@ -272,7 +272,7 @@ void TextCodecICU::CreateICUConverter()
-   DCHECK(!converter_icu_);
- 
- #if defined(USING_SYSTEM_ICU)
--  const char* name = m_encoding.name();
-+  const char* name = encoding_.GetName();
-   m_needsGBKFallbacks =
-       name[0] == 'G' && name[1] == 'B' && name[2] == 'K' && !name[3];
- #endif
-@@ -393,16 +393,16 @@ String TextCodecICU::Decode(const char*
-   // Chrome's copy of ICU does not have the issue described below.
-   return result.ToString();
- #else
--  String resultString = result.toString();
-+  String resultString = result.ToString();
- 
-   // <http://bugs.webkit.org/show_bug.cgi?id=17014>
-   // Simplified Chinese pages use the code A3A0 to mean "full-width space", but
-   // ICU decodes it as U+E5E5.
--  if (!strcmp(m_encoding.name(), "GBK")) {
--    if (!strcasecmp(m_encoding.name(), "gb18030"))
--      resultString.replace(0xE5E5, ideographicSpaceCharacter);
-+  if (!strcmp(encoding_.GetName(), "GBK")) {
-+    if (!strcasecmp(encoding_.GetName(), "gb18030"))
-+      resultString.Replace(0xE5E5, ideographicSpaceCharacter);
-     // Make GBK compliant to the encoding spec and align with GB18030
--    resultString.replace(0x01F9, 0xE7C8);
-+    resultString.Replace(0x01F9, 0xE7C8);
-     // FIXME: Once https://www.w3.org/Bugs/Public/show_bug.cgi?id=28740#c3
-     // is resolved, add U+1E3F => 0xE7C7.
-   }
-@@ -506,7 +506,7 @@ static void gbkCallbackEscape(const void
-     ucnv_cbFromUWriteUChars(fromUArgs, &source, source + 1, 0, err);
-     return;
-   }
--  numericEntityCallback(context, fromUArgs, codeUnits, length, codePoint,
-+  NumericEntityCallback(context, fromUArgs, codeUnits, length, codePoint,
-                         reason, err);
- }
- 
-@@ -525,7 +525,7 @@ static void gbkCssEscapedEntityCallack(c
-       ucnv_cbFromUWriteUChars(fromUArgs, &source, source + 1, 0, err);
-       return;
-     }
--    cssEscapedEntityCallback(context, fromUArgs, codeUnits, length, codePoint,
-+    CssEscapedEntityCallback(context, fromUArgs, codeUnits, length, codePoint,
-                              reason, err);
-     return;
-   }
-@@ -548,7 +548,7 @@ static void gbkUrlEscapedEntityCallack(c
-       ucnv_cbFromUWriteUChars(fromUArgs, &source, source + 1, 0, err);
-       return;
-     }
--    urlEscapedEntityCallback(context, fromUArgs, codeUnits, length, codePoint,
-+    UrlEscapedEntityCallback(context, fromUArgs, codeUnits, length, codePoint,
-                              reason, err);
-     return;
-   }
-@@ -622,7 +622,7 @@ CString TextCodecICU::EncodeInternal(con
-                             0, 0, &err);
- #else
-       ucnv_setFromUCallBack(
--          m_converterICU, m_needsGBKFallbacks ? gbkCallbackSubstitute
-+          converter_icu_, m_needsGBKFallbacks ? gbkCallbackSubstitute
-                                               : UCNV_FROM_U_CALLBACK_SUBSTITUTE,
-           0, 0, 0, &err);
- #endif
-@@ -633,8 +633,8 @@ CString TextCodecICU::EncodeInternal(con
-                             &err);
- #else
-       ucnv_setFromUCallBack(
--          m_converterICU,
--          m_needsGBKFallbacks ? gbkCallbackEscape : numericEntityCallback, 0, 0,
-+          converter_icu_,
-+          m_needsGBKFallbacks ? gbkCallbackEscape : NumericEntityCallback, 0, 0,
-           0, &err);
- #endif
-       break;
-@@ -643,9 +643,9 @@ CString TextCodecICU::EncodeInternal(con
-       ucnv_setFromUCallBack(converter_icu_, UrlEscapedEntityCallback, 0, 0, 0,
-                             &err);
- #else
--      ucnv_setFromUCallBack(m_converterICU,
-+      ucnv_setFromUCallBack(converter_icu_,
-                             m_needsGBKFallbacks ? gbkUrlEscapedEntityCallack
--                                                : urlEscapedEntityCallback,
-+                                                : UrlEscapedEntityCallback,
-                             0, 0, 0, &err);
- #endif
-       break;
-@@ -654,9 +654,9 @@ CString TextCodecICU::EncodeInternal(con
-       ucnv_setFromUCallBack(converter_icu_, CssEscapedEntityCallback, 0, 0, 0,
-                             &err);
- #else
--      ucnv_setFromUCallBack(m_converterICU,
-+      ucnv_setFromUCallBack(converter_icu_,
-                             m_needsGBKFallbacks ? gbkCssEscapedEntityCallack
--                                                : cssEscapedEntityCallback,
-+                                                : CssEscapedEntityCallback,
-                             0, 0, 0, &err);
- #endif
-       break;
---- a/third_party/WebKit/Source/platform/text/CharacterPropertyDataGenerator.cpp
-+++ b/third_party/WebKit/Source/platform/text/CharacterPropertyDataGenerator.cpp
-@@ -20,7 +20,7 @@
- namespace blink {
- 
- #if defined(USING_SYSTEM_ICU)
--static void generate(FILE*) {}
-+static void Generate(FILE*) {}
- #else
- 
- const UChar32 kMaxCodepoint = 0x10FFFF;
---- a/third_party/WebKit/Source/platform/text/CharacterEmoji.cpp
-+++ b/third_party/WebKit/Source/platform/text/CharacterEmoji.cpp
-@@ -192,26 +192,26 @@ static void applyPatternAndFreeze(icu::U
-   DCHECK_EQ(err, U_ZERO_ERROR);
- }
- 
--bool Character::isEmoji(UChar32 ch) {
--  return Character::isEmojiTextDefault(ch) ||
--         Character::isEmojiEmojiDefault(ch);
-+bool Character::IsEmoji(UChar32 ch) {
-+  return Character::IsEmojiTextDefault(ch) ||
-+         Character::IsEmojiEmojiDefault(ch);
- }
- 
--bool Character::isEmojiTextDefault(UChar32 ch) {
-+bool Character::IsEmojiTextDefault(UChar32 ch) {
-   DEFINE_STATIC_LOCAL(icu::UnicodeSet, emojiTextSet, ());
-   if (emojiTextSet.isEmpty())
-     applyPatternAndFreeze(&emojiTextSet, kEmojiTextPattern);
--  return emojiTextSet.contains(ch) && !isEmojiEmojiDefault(ch);
-+  return emojiTextSet.contains(ch) && !IsEmojiEmojiDefault(ch);
- }
- 
--bool Character::isEmojiEmojiDefault(UChar32 ch) {
-+bool Character::IsEmojiEmojiDefault(UChar32 ch) {
-   DEFINE_STATIC_LOCAL(icu::UnicodeSet, emojiEmojiSet, ());
-   if (emojiEmojiSet.isEmpty())
-     applyPatternAndFreeze(&emojiEmojiSet, kEmojiEmojiPattern);
-   return emojiEmojiSet.contains(ch);
- }
- 
--bool Character::isEmojiModifierBase(UChar32 ch) {
-+bool Character::IsEmojiModifierBase(UChar32 ch) {
-   DEFINE_STATIC_LOCAL(icu::UnicodeSet, emojieModifierBaseSet, ());
-   if (emojieModifierBaseSet.isEmpty())
-     applyPatternAndFreeze(&emojieModifierBaseSet, kEmojiModifierBasePattern);
diff --git a/debian/patches/system/nspr.patch b/debian/patches/system/nspr.patch
index 2b74e95..5f2cca0 100644
--- a/debian/patches/system/nspr.patch
+++ b/debian/patches/system/nspr.patch
@@ -25,7 +25,7 @@ author: Michael Gilbert <mgilbert at debian.org>
  namespace base {
 --- a/tools/gn/bootstrap/bootstrap.py
 +++ b/tools/gn/bootstrap/bootstrap.py
-@@ -492,7 +492,6 @@ def write_gn_ninja(path, root_gen_dir, o
+@@ -510,7 +510,6 @@ def write_gn_ninja(path, root_gen_dir, o
        'base/third_party/dmg_fp/dtoa_wrapper.cc',
        'base/third_party/dmg_fp/g_fmt.cc',
        'base/third_party/icu/icu_utf.cc',
@@ -33,15 +33,15 @@ author: Michael Gilbert <mgilbert at debian.org>
        'base/threading/non_thread_safe_impl.cc',
        'base/threading/post_task_and_reply_impl.cc',
        'base/threading/sequenced_task_runner_handle.cc',
-@@ -601,7 +600,7 @@ def write_gn_ninja(path, root_gen_dir, o
-     }
- 
-   if is_linux:
--    libs.extend(['-lrt', '-latomic'])
-+    libs.extend(['-lrt', '-latomic', '-lnspr4'])
-     ldflags.extend(['-pthread'])
- 
-     static_libraries['xdg_user_dirs'] = {
+@@ -661,7 +660,7 @@ def write_gn_ninja(path, root_gen_dir, o
+         'base/allocator/allocator_shim.cc',
+         'base/allocator/allocator_shim_default_dispatch_to_glibc.cc',
+       ])
+-      libs.extend(['-lrt', '-latomic'])
++      libs.extend(['-lrt', '-latomic', '-lnspr4'])
+       static_libraries['libevent']['include_dirs'].extend([
+           os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'linux')
+       ])
 --- a/base/BUILD.gn
 +++ b/base/BUILD.gn
 @@ -58,6 +58,9 @@ config("base_flags") {
@@ -54,7 +54,7 @@ author: Michael Gilbert <mgilbert at debian.org>
  }
  
  config("base_implementation") {
-@@ -861,8 +864,6 @@ component("base") {
+@@ -868,8 +871,6 @@ component("base") {
      "third_party/dmg_fp/g_fmt.cc",
      "third_party/icu/icu_utf.cc",
      "third_party/icu/icu_utf.h",
diff --git a/debian/patches/system/vpx.patch b/debian/patches/system/vpx.patch
index c8710e0..c30c2e8 100644
--- a/debian/patches/system/vpx.patch
+++ b/debian/patches/system/vpx.patch
@@ -3,7 +3,7 @@ author: Michael Gilbert <mgilbert at debian.org>
 
 --- a/third_party/webrtc/modules/video_coding/codecs/vp8/vp8_impl.cc
 +++ b/third_party/webrtc/modules/video_coding/codecs/vp8/vp8_impl.cc
-@@ -1077,9 +1077,6 @@ int VP8DecoderImpl::Decode(const Encoded
+@@ -1076,9 +1076,6 @@ int VP8DecoderImpl::Decode(const Encoded
  
    img = vpx_codec_get_frame(decoder_, &iter);
    int qp;
@@ -13,7 +13,7 @@ author: Michael Gilbert <mgilbert at debian.org>
    ret = ReturnFrame(img, input_image._timeStamp, input_image.ntp_time_ms_, qp);
    if (ret != 0) {
      // Reset to avoid requesting key frames too often.
-@@ -1126,8 +1123,9 @@ int VP8DecoderImpl::ReturnFrame(const vp
+@@ -1125,8 +1122,9 @@ int VP8DecoderImpl::ReturnFrame(const vp
  
    VideoFrame decoded_image(buffer, timestamp, 0, kVideoRotation_0);
    decoded_image.set_ntp_time_ms(ntp_time_ms);
@@ -25,3 +25,25 @@ author: Michael Gilbert <mgilbert at debian.org>
  
    return WEBRTC_VIDEO_CODEC_OK;
  }
+--- a/media/base/decode_capabilities.cc
++++ b/media/base/decode_capabilities.cc
+@@ -14,8 +14,8 @@
+ // backwards compatibility for legacy applications using the library.
+ #define VPX_CODEC_DISABLE_COMPAT 1
+ extern "C" {
+-#include "third_party/libvpx/source/libvpx/vpx/vp8dx.h"
+-#include "third_party/libvpx/source/libvpx/vpx/vpx_codec.h"
++#include <vpx/vp8dx.h>
++#include <vpx/vpx_codec.h>
+ }
+ #endif
+ 
+@@ -113,7 +113,7 @@ bool IsColorSpaceSupported(const media::
+ }
+ 
+ bool IsVp9ProfileSupported(VideoCodecProfile profile) {
+-#if !defined(MEDIA_DISABLE_LIBVPX)
++#if 0
+   // High bit depth capabilities may be toggled via LibVPX config flags.
+   static bool vpx_supports_high_bit_depth =
+       (vpx_codec_get_caps(vpx_codec_vp9_dx()) & VPX_CODEC_CAP_HIGHBITDEPTH) !=
diff --git a/debian/rules b/debian/rules
index 2fb61dd..4d7d258 100755
--- a/debian/rules
+++ b/debian/rules
@@ -82,7 +82,10 @@ override_dh_auto_configure:
 	# use system flot
 	for file in $(flotpaths); do ln -sf $$file third_party/flot; done
 	# strip out system third_party libraries
+	cp third_party/freetype/src/src/psnames/pstables.h .
 	./debian/scripts/unbundle
+	mkdir -p third_party/freetype/src/src/psnames
+	mv pstables.h third_party/freetype/src/src/psnames
 	# build gn
 	./tools/gn/bootstrap/bootstrap.py -s $(njobs)
 	# configure
diff --git a/debian/scripts/unbundle b/debian/scripts/unbundle
index fcf7a57..e1a340b 100755
--- a/debian/scripts/unbundle
+++ b/debian/scripts/unbundle
@@ -11,10 +11,10 @@ import replace_gn_files
 def strip(path):
     if os.path.exists(path):
         for filename in os.listdir(path):
-            remove=True
+            remove = True
             for extension in ('.py','.gn','.gni','google','chromium'):
                 if filename.endswith(extension):
-                    remove=False
+                    remove = False
             if remove:
                 removal=os.path.join(path,filename)
                 print('removing: %s'%removal)
@@ -23,7 +23,7 @@ def strip(path):
                 else:
                     os.remove(removal)
 
-keepers = ()
+keepers = ('openh264')
 
 for lib,rule in replace_gn_files.REPLACEMENTS.items():
     if lib not in keepers:

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-chromium/pkg-chromium.git



More information about the Pkg-chromium-commit mailing list