[tor-commits] [Git][tpo/applications/mullvad-browser][mullvad-browser-115.3.0esr-13.0-1] 2 commits: Bug 1847180. a=RyanVM

richard (@richard) git at gitlab.torproject.org
Thu Sep 28 19:23:08 UTC 2023



richard pushed to branch mullvad-browser-115.3.0esr-13.0-1 at The Tor Project / Applications / Mullvad Browser


Commits:
dd33df76 by Marco Bonardo at 2023-09-28T19:22:25+00:00
Bug 1847180.  a=RyanVM

Original Revision: https://phabricator.services.mozilla.com/D188240

Differential Revision: https://phabricator.services.mozilla.com/D188568
- - - - -
89afa055 by Ryan VanderMeulen at 2023-09-28T19:22:32+00:00
Bug 1855550 - VP8: disallow thread count changes. r=jesup, a=dsmith

Cherry-pick of upstream libvpx commits:
https://chromium.googlesource.com/webm/libvpx/+/af6dedd715f4307669366944cca6e0417b290282
https://chromium.googlesource.com/webm/libvpx/+/3fbd1dca6a4d2dad332a2110d646e4ffef36d590

Differential Revision: https://phabricator.services.mozilla.com/D189428
- - - - -


6 changed files:

- media/libvpx/libvpx/test/encode_api_test.cc
- media/libvpx/libvpx/vp8/encoder/onyx_if.c
- toolkit/components/reputationservice/ApplicationReputation.cpp
- toolkit/components/reputationservice/test/gtest/TestExecutableLists.cpp
- xpcom/io/nsLocalFileCommon.cpp
- xpcom/io/nsLocalFileCommon.h


Changes:

=====================================
media/libvpx/libvpx/test/encode_api_test.cc
=====================================
@@ -307,7 +307,6 @@ TEST(EncodeAPI, SetRoi) {
 
 void InitCodec(const vpx_codec_iface_t &iface, int width, int height,
                vpx_codec_ctx_t *enc, vpx_codec_enc_cfg_t *cfg) {
-  ASSERT_EQ(vpx_codec_enc_config_default(&iface, cfg, 0), VPX_CODEC_OK);
   cfg->g_w = width;
   cfg->g_h = height;
   cfg->g_lag_in_frames = 0;
@@ -345,6 +344,7 @@ TEST(EncodeAPI, ConfigChangeThreadCount) {
         vpx_codec_ctx_t ctx = {};
       } enc;
 
+      ASSERT_EQ(vpx_codec_enc_config_default(iface, &cfg, 0), VPX_CODEC_OK);
       EXPECT_NO_FATAL_FAILURE(
           InitCodec(*iface, kWidth, kHeight, &enc.ctx, &cfg));
       if (IsVP9(iface)) {
@@ -363,6 +363,50 @@ TEST(EncodeAPI, ConfigChangeThreadCount) {
   }
 }
 
+TEST(EncodeAPI, ConfigResizeChangeThreadCount) {
+  constexpr int kInitWidth = 1024;
+  constexpr int kInitHeight = 1024;
+
+  for (const auto *iface : kCodecIfaces) {
+    SCOPED_TRACE(vpx_codec_iface_name(iface));
+    for (int i = 0; i < (IsVP9(iface) ? 2 : 1); ++i) {
+      vpx_codec_enc_cfg_t cfg = {};
+      struct Encoder {
+        ~Encoder() { EXPECT_EQ(vpx_codec_destroy(&ctx), VPX_CODEC_OK); }
+        vpx_codec_ctx_t ctx = {};
+      } enc;
+
+      ASSERT_EQ(vpx_codec_enc_config_default(iface, &cfg, 0), VPX_CODEC_OK);
+      // Start in threaded mode to ensure resolution and thread related
+      // allocations are updated correctly across changes in resolution and
+      // thread counts. See https://crbug.com/1486441.
+      cfg.g_threads = 4;
+      EXPECT_NO_FATAL_FAILURE(
+          InitCodec(*iface, kInitWidth, kInitHeight, &enc.ctx, &cfg));
+      if (IsVP9(iface)) {
+        EXPECT_EQ(vpx_codec_control_(&enc.ctx, VP9E_SET_TILE_COLUMNS, 6),
+                  VPX_CODEC_OK);
+        EXPECT_EQ(vpx_codec_control_(&enc.ctx, VP9E_SET_ROW_MT, i),
+                  VPX_CODEC_OK);
+      }
+
+      cfg.g_w = 1000;
+      cfg.g_h = 608;
+      EXPECT_EQ(vpx_codec_enc_config_set(&enc.ctx, &cfg), VPX_CODEC_OK)
+          << vpx_codec_error_detail(&enc.ctx);
+
+      cfg.g_w = 16;
+      cfg.g_h = 720;
+
+      for (const auto threads : { 1, 4, 8, 6, 2, 1 }) {
+        cfg.g_threads = threads;
+        EXPECT_NO_FATAL_FAILURE(EncodeWithConfig(cfg, &enc.ctx))
+            << "iteration: " << i << " threads: " << threads;
+      }
+    }
+  }
+}
+
 #if CONFIG_VP9_ENCODER
 class EncodeApiGetTplStatsTest
     : public ::libvpx_test::EncoderTest,


=====================================
media/libvpx/libvpx/vp8/encoder/onyx_if.c
=====================================
@@ -1447,6 +1447,12 @@ void vp8_change_config(VP8_COMP *cpi, VP8_CONFIG *oxcf) {
   last_h = cpi->oxcf.Height;
   prev_number_of_layers = cpi->oxcf.number_of_layers;
 
+  if (cpi->initial_width) {
+    // TODO(https://crbug.com/1486441): Allow changing thread counts; the
+    // allocation is done once in vp8_create_compressor().
+    oxcf->multi_threaded = cpi->oxcf.multi_threaded;
+  }
+
   cpi->oxcf = *oxcf;
 
   switch (cpi->oxcf.Mode) {


=====================================
toolkit/components/reputationservice/ApplicationReputation.cpp
=====================================
@@ -181,6 +181,8 @@ const char* const ApplicationReputationService::kBinaryFileExtensions[] = {
     ".applescript",
     //".application", exec // MS ClickOnce
     //".appref-ms", exec // MS ClickOnce
+    //".appx", exec
+    //".appxbundle", exec
     //".arc",
     //".arj",
     ".as",  // Mac archive
@@ -334,6 +336,8 @@ const char* const ApplicationReputationService::kBinaryFileExtensions[] = {
     //".msh2xml", exec // Windows shell
     //".mshxml", exec // Windows
     //".msi", exec  // Windows installer
+    //".msix", exec // Windows installer
+    //".msixbundle", exec // Windows installer
     //".msp", exec  // Windows installer
     //".mst", exec  // Windows installer
     ".ndif",            // Mac disk image


=====================================
toolkit/components/reputationservice/test/gtest/TestExecutableLists.cpp
=====================================
@@ -25,6 +25,8 @@ static const char* const kTestFileExtensions[] = {
     ".applescript",
     ".application",  // MS ClickOnce
     ".appref-ms",    // MS ClickOnce
+    ".appx",
+    ".appxbundle",
     ".as",           // Mac archive
     ".asp",          // Windows Server script
     ".asx",          // Windows Media Player
@@ -155,6 +157,8 @@ static const char* const kTestFileExtensions[] = {
     ".msh2xml",            // Windows shell
     ".mshxml",             // Windows
     ".msi",                // Windows installer
+    ".msix",               // Windows installer
+    ".msixbundle",         // Windows installer
     ".msp",                // Windows installer
     ".mst",                // Windows installer
     ".ndif",               // Mac disk image


=====================================
xpcom/io/nsLocalFileCommon.cpp
=====================================
@@ -42,6 +42,8 @@ const char* const sExecutableExts[] = {
   ".app",         // executable application
   ".application", // from bug 348763
   ".appref-ms",   // ClickOnce link
+  ".appx",
+  ".appxbundle",
   ".asp",
   ".atloc",       // Appletalk Location
   ".bas",
@@ -96,6 +98,8 @@ const char* const sExecutableExts[] = {
   ".msh2xml",     // Microsoft Shell
   ".mshxml",      // Microsoft Shell
   ".msi",
+  ".msix",
+  ".msixbundle",
   ".msp",
   ".mst",
   ".ops",         // Office Profile Settings


=====================================
xpcom/io/nsLocalFileCommon.h
=====================================
@@ -8,9 +8,9 @@
 #define _NS_LOCAL_FILE_COMMON_H_
 
 #ifdef MOZ_ESR
-extern const char* const sExecutableExts[103];
+extern const char* const sExecutableExts[107];
 #else
-extern const char* const sExecutableExts[104];
+extern const char* const sExecutableExts[108];
 #endif
 
 #endif



View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/0f231fb37d4d0b730edfea358aa9d1b2763c3f5e...89afa05563e9883b1af8e5fe09756c0a38248fa8

-- 
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/0f231fb37d4d0b730edfea358aa9d1b2763c3f5e...89afa05563e9883b1af8e5fe09756c0a38248fa8
You're receiving this email because of your account on gitlab.torproject.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.torproject.org/pipermail/tor-commits/attachments/20230928/b0e2ea13/attachment-0001.htm>


More information about the tor-commits mailing list