Analysis Report

Shared security patch analysis results

AI Used: DEEPSEEK deepseek-chat
Share this analysis
6017 filtered / 6017 total files
testing/web-platform/tests/html/canvas/offscreen/transformations/2d.transformation.setTransform.nonfinite.worker.js AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/testing/web-platform/tests/html/canvas/offscreen/transformations/2d.transformation.setTransform.nonfinite.worker.js+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/testing/web-platform/tests/html/canvas/offscreen/transformations/2d.transformation.setTransform.nonfinite.worker.js@@ -13,8 +13,8 @@ }); t.step(function() {-var offscreenCanvas = new OffscreenCanvas(100, 50);-var ctx = offscreenCanvas.getContext('2d');+var canvas = new OffscreenCanvas(100, 50);+var ctx = canvas.getContext('2d'); ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50);@@ -96,7 +96,7 @@ ctx.setTransform(0, 0, 0, 0, Infinity, Infinity); ctx.fillStyle = '#0f0'; ctx.fillRect(-100, -10, 100, 50);-_assertPixel(offscreenCanvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255");+_assertPixel(canvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255"); t.done(); });
AI Analysis
Based on the provided code diff, I don't see any security vulnerabilities being fixed. The changes appear to be purely variable renaming and don't affect security. Here's the analysis:

1. Vulnerability Existed: no
    Variable Renaming [File] [Lines 13-14, 96]
    Old Code:
    ```javascript
    var offscreenCanvas = new OffscreenCanvas(100, 50);
    var ctx = offscreenCanvas.getContext('2d');
    ```
    Fixed Code:
    ```javascript
    var canvas = new OffscreenCanvas(100, 50);
    var ctx = canvas.getContext('2d');
    ```

2. Vulnerability Existed: no
    Variable Renaming [File] [Line 96]
    Old Code:
    ```javascript
    _assertPixel(offscreenCanvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255");
    ```
    Fixed Code:
    ```javascript
    _assertPixel(canvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255");
    ```

The changes simply rename the variable `offscreenCanvas` to `canvas` for consistency or clarity, which doesn't relate to any security fixes. No actual security vulnerabilities are addressed in this diff.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
third_party/rust/darling_core/src/from_generic_param.rs AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/third_party/rust/darling_core/src/from_generic_param.rs+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/third_party/rust/darling_core/src/from_generic_param.rs@@ -1,6 +1,4 @@-use syn;--use Result;+use crate::Result; /// Creates an instance by parsing a specific `syn::GenericParam`. /// This can be a type param, a lifetime, or a const param.
AI Analysis
Based on the provided diff, I'll analyze it for security vulnerabilities:

1. Vulnerability Existed: no
   No specific vulnerability [third_party/rust/darling_core/src/from_generic_param.rs] [Lines 1-3]
   Old Code:
   use syn;
   use Result;
   Fixed Code:
   use crate::Result;

The changes appear to be purely stylistic/refactoring changes rather than security fixes. The diff shows:
1. Removal of unused `syn` import
2. Changing `use Result` to `use crate::Result` to be more explicit about the source

No security vulnerabilities are being addressed in this diff. The changes are related to code organization and clarity rather than security fixes.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
third_party/rust/neqo-transport/src/addr_valid.rs AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/third_party/rust/neqo-transport/src/addr_valid.rs+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/third_party/rust/neqo-transport/src/addr_valid.rs@@ -165,11 +165,7 @@         now: Instant,     ) -> Option<ConnectionId> {         let peer_addr = Self::encode_aad(peer_address, retry);-        let data = if let Ok(d) = self.self_encrypt.open(&peer_addr, token) {-            d-        } else {-            return None;-        };+        let data = self.self_encrypt.open(&peer_addr, token).ok()?;         let mut dec = Decoder::new(&data);         match dec.decode_uint(4) {             Some(d) => {
AI Analysis
Let me analyze the code diff for potential security vulnerabilities.

Vulnerability Existed: not sure
[Potential Error Handling Vulnerability] [third_party/rust/neqo-transport/src/addr_valid.rs] [Lines 165-171]
[Old Code]
        let data = if let Ok(d) = self.self_encrypt.open(&peer_addr, token) {
            d
        } else {
            return None;
        };
[Fixed Code]
        let data = self.self_encrypt.open(&peer_addr, token).ok()?;

Analysis:
The change simplifies error handling by using the `ok()?` pattern instead of an explicit if-let-else block. While this doesn't represent a clear security vulnerability, the explicit error handling in the old code might have been more readable and explicit about the failure case. The change doesn't introduce any new security issues, but it's unclear if the original code had any security implications. The modification is primarily a code style/readability improvement rather than a security fix.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
devtools/shared/commands/resource/resource-command.js AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/devtools/shared/commands/resource/resource-command.js+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/devtools/shared/commands/resource/resource-command.js@@ -1135,18 +1135,6 @@ // Each section added here should eventually be removed once the equivalent server // code is implement in Firefox, in its release channel. const LegacyListeners = {-  [ResourceCommand.TYPES-    .CONSOLE_MESSAGE]: require("devtools/shared/commands/resource/legacy-listeners/console-messages"),-  [ResourceCommand.TYPES-    .CSS_CHANGE]: require("devtools/shared/commands/resource/legacy-listeners/css-changes"),-  [ResourceCommand.TYPES-    .CSS_MESSAGE]: require("devtools/shared/commands/resource/legacy-listeners/css-messages"),-  [ResourceCommand.TYPES-    .ERROR_MESSAGE]: require("devtools/shared/commands/resource/legacy-listeners/error-messages"),-  [ResourceCommand.TYPES-    .PLATFORM_MESSAGE]: require("devtools/shared/commands/resource/legacy-listeners/platform-messages"),-  [ResourceCommand.TYPES-    .CLONED_CONTENT_PROCESS_MESSAGE]: require("devtools/shared/commands/resource/legacy-listeners/cloned-content-process-messages"),   async [ResourceCommand.TYPES.DOCUMENT_EVENT]({     targetCommand,     targetFront,@@ -1164,59 +1152,160 @@     });     await webConsoleFront.startListeners(["DocumentEvents"]);   },-  [ResourceCommand.TYPES-    .ROOT_NODE]: require("devtools/shared/commands/resource/legacy-listeners/root-node"),-  [ResourceCommand.TYPES-    .STYLESHEET]: require("devtools/shared/commands/resource/legacy-listeners/stylesheet"),-  [ResourceCommand.TYPES-    .NETWORK_EVENT]: require("devtools/shared/commands/resource/legacy-listeners/network-events"),-  [ResourceCommand.TYPES-    .WEBSOCKET]: require("devtools/shared/commands/resource/legacy-listeners/websocket"),-  [ResourceCommand.TYPES-    .COOKIE]: require("devtools/shared/commands/resource/legacy-listeners/cookie"),-  [ResourceCommand.TYPES-    .CACHE_STORAGE]: require("devtools/shared/commands/resource/legacy-listeners/cache-storage"),-  [ResourceCommand.TYPES-    .LOCAL_STORAGE]: require("devtools/shared/commands/resource/legacy-listeners/local-storage"),-  [ResourceCommand.TYPES-    .SESSION_STORAGE]: require("devtools/shared/commands/resource/legacy-listeners/session-storage"),-  [ResourceCommand.TYPES-    .EXTENSION_STORAGE]: require("devtools/shared/commands/resource/legacy-listeners/extension-storage"),-  [ResourceCommand.TYPES-    .INDEXED_DB]: require("devtools/shared/commands/resource/legacy-listeners/indexed-db"),-  [ResourceCommand.TYPES-    .NETWORK_EVENT_STACKTRACE]: require("devtools/shared/commands/resource/legacy-listeners/network-event-stacktraces"),-  [ResourceCommand.TYPES-    .SOURCE]: require("devtools/shared/commands/resource/legacy-listeners/source"),-  [ResourceCommand.TYPES-    .THREAD_STATE]: require("devtools/shared/commands/resource/legacy-listeners/thread-states"),-  [ResourceCommand.TYPES-    .SERVER_SENT_EVENT]: require("devtools/shared/commands/resource/legacy-listeners/server-sent-events"),-  [ResourceCommand.TYPES-    .REFLOW]: require("devtools/shared/commands/resource/legacy-listeners/reflow"), };+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.CONSOLE_MESSAGE,+  "devtools/shared/commands/resource/legacy-listeners/console-messages"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.CSS_CHANGE,+  "devtools/shared/commands/resource/legacy-listeners/css-changes"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.CSS_MESSAGE,+  "devtools/shared/commands/resource/legacy-listeners/css-messages"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.ERROR_MESSAGE,+  "devtools/shared/commands/resource/legacy-listeners/error-messages"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.PLATFORM_MESSAGE,+  "devtools/shared/commands/resource/legacy-listeners/platform-messages"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.CLONED_CONTENT_PROCESS_MESSAGE,+  "devtools/shared/commands/resource/legacy-listeners/cloned-content-process-messages"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.ROOT_NODE,+  "devtools/shared/commands/resource/legacy-listeners/root-node"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.STYLESHEET,+  "devtools/shared/commands/resource/legacy-listeners/stylesheet"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.NETWORK_EVENT,+  "devtools/shared/commands/resource/legacy-listeners/network-events"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.WEBSOCKET,+  "devtools/shared/commands/resource/legacy-listeners/websocket"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.COOKIE,+  "devtools/shared/commands/resource/legacy-listeners/cookie"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.CACHE_STORAGE,+  "devtools/shared/commands/resource/legacy-listeners/cache-storage"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.LOCAL_STORAGE,+  "devtools/shared/commands/resource/legacy-listeners/local-storage"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.SESSION_STORAGE,+  "devtools/shared/commands/resource/legacy-listeners/session-storage"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.EXTENSION_STORAGE,+  "devtools/shared/commands/resource/legacy-listeners/extension-storage"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.INDEXED_DB,+  "devtools/shared/commands/resource/legacy-listeners/indexed-db"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.NETWORK_EVENT_STACKTRACE,+  "devtools/shared/commands/resource/legacy-listeners/network-event-stacktraces"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.SOURCE,+  "devtools/shared/commands/resource/legacy-listeners/source"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.THREAD_STATE,+  "devtools/shared/commands/resource/legacy-listeners/thread-states"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.SERVER_SENT_EVENT,+  "devtools/shared/commands/resource/legacy-listeners/server-sent-events"+);+loader.lazyRequireGetter(+  LegacyListeners,+  ResourceCommand.TYPES.REFLOW,+  "devtools/shared/commands/resource/legacy-listeners/reflow"+); // Optional transformers for each type of resource. // Each module added here should be a function that will receive the resource, the target, … // and perform some transformation on the resource before it will be emitted. // This is a good place to handle backward compatibility and manual resource marshalling.-const ResourceTransformers = {-  [ResourceCommand.TYPES-    .CONSOLE_MESSAGE]: require("devtools/shared/commands/resource/transformers/console-messages"),-  [ResourceCommand.TYPES-    .ERROR_MESSAGE]: require("devtools/shared/commands/resource/transformers/error-messages"),-  [ResourceCommand.TYPES-    .CACHE_STORAGE]: require("devtools/shared/commands/resource/transformers/storage-cache.js"),-  [ResourceCommand.TYPES-    .COOKIE]: require("devtools/shared/commands/resource/transformers/storage-cookie.js"),-  [ResourceCommand.TYPES-    .INDEXED_DB]: require("devtools/shared/commands/resource/transformers/storage-indexed-db.js"),-  [ResourceCommand.TYPES-    .LOCAL_STORAGE]: require("devtools/shared/commands/resource/transformers/storage-local-storage.js"),-  [ResourceCommand.TYPES-    .SESSION_STORAGE]: require("devtools/shared/commands/resource/transformers/storage-session-storage.js"),-  [ResourceCommand.TYPES-    .NETWORK_EVENT]: require("devtools/shared/commands/resource/transformers/network-events"),-  [ResourceCommand.TYPES-    .THREAD_STATE]: require("devtools/shared/commands/resource/transformers/thread-states"),-};+const ResourceTransformers = {};+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.CONSOLE_MESSAGE,+  "devtools/shared/commands/resource/transformers/console-messages"+);+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.ERROR_MESSAGE,+  "devtools/shared/commands/resource/transformers/error-messages"+);+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.CACHE_STORAGE,+  "devtools/shared/commands/resource/transformers/storage-cache.js"+);+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.COOKIE,+  "devtools/shared/commands/resource/transformers/storage-cookie.js"+);+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.INDEXED_DB,+  "devtools/shared/commands/resource/transformers/storage-indexed-db.js"+);+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.LOCAL_STORAGE,+  "devtools/shared/commands/resource/transformers/storage-local-storage.js"+);+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.SESSION_STORAGE,+  "devtools/shared/commands/resource/transformers/storage-session-storage.js"+);+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.NETWORK_EVENT,+  "devtools/shared/commands/resource/transformers/network-events"+);+loader.lazyRequireGetter(+  ResourceTransformers,+  ResourceCommand.TYPES.THREAD_STATE,+  "devtools/shared/commands/resource/transformers/thread-states"+);
AI Analysis
Based on the provided code diff, I can analyze the changes for potential security fixes. The main change appears to be a refactoring from direct module imports to using `loader.lazyRequireGetter` for both `LegacyListeners` and `ResourceTransformers` objects.

Here's the analysis:

1. Vulnerability Existed: not sure
   Module Loading Optimization [File] devtools/shared/commands/resource/resource-command.js [Lines 1135-1164, 1152-1261]
   [Old Code]
   const LegacyListeners = {
     [ResourceCommand.TYPES.CONSOLE_MESSAGE]: require("devtools/shared/commands/resource/legacy-listeners/console-messages"),
     // ... many other direct requires
   };
   const ResourceTransformers = {
     [ResourceCommand.TYPES.CONSOLE_MESSAGE]: require("devtools/shared/commands/resource/transformers/console-messages"),
     // ... other direct requires
   };

   [Fixed Code]
   const LegacyListeners = {};
   const ResourceTransformers = {};
   // ... many loader.lazyRequireGetter calls for each module

Additional Details:
The change appears to be primarily about performance optimization rather than security. The switch from direct `require()` calls to `loader.lazyRequireGetter()` suggests this is about lazy loading modules only when needed, rather than loading them all at once. This could indirectly improve security by reducing the attack surface at initialization time, but there's no clear security vulnerability being fixed here.

No specific vulnerabilities are being addressed in this change, but the lazy loading pattern is generally considered a good practice for both performance and security (principle of least privilege/need-to-know basis for module loading).
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
dom/media/webrtc/third_party_build/gn-configs/x64_False_x64_win.json AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/dom/media/webrtc/third_party_build/gn-configs/x64_False_x64_win.json+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/dom/media/webrtc/third_party_build/gn-configs/x64_False_x64_win.json@@ -39,7 +39,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -226,7 +225,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -395,7 +393,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -564,7 +561,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -738,7 +734,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -908,7 +903,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -1074,7 +1068,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -1237,7 +1230,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -1409,7 +1401,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -1582,7 +1573,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -1754,7 +1744,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -1927,7 +1916,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -2099,7 +2087,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -2273,7 +2260,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -2434,7 +2420,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -2608,7 +2593,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -2784,7 +2768,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -2945,7 +2928,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -3114,7 +3096,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -3289,7 +3270,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -3458,7 +3438,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -3633,7 +3612,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -3808,7 +3786,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -3984,7 +3961,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -4145,7 +4121,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -4317,7 +4292,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -4493,7 +4467,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -4664,7 +4637,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -4850,7 +4822,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -5032,7 +5003,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -5214,7 +5184,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -5379,7 +5348,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -5544,7 +5512,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -5714,7 +5681,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -5884,7 +5850,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -6060,7 +6025,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -6233,7 +6197,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -6400,7 +6363,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -6571,7 +6533,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -6743,7 +6704,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -6911,7 +6871,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -7078,7 +7037,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -7245,7 +7203,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -7410,7 +7367,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -7578,7 +7534,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -7751,7 +7706,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -7926,7 +7880,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -8090,7 +8043,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -8260,7 +8212,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -8427,7 +8378,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -8595,7 +8545,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -8762,7 +8711,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -8930,7 +8878,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -9107,7 +9054,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -9276,7 +9222,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -9453,7 +9398,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -9624,7 +9568,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -9790,7 +9733,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -9959,7 +9901,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -10124,7 +10065,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -10291,7 +10231,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -10452,7 +10391,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -10631,7 +10569,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -10808,7 +10745,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -10985,7 +10921,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -11155,7 +11090,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -11332,7 +11266,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -11493,7 +11426,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -11669,7 +11601,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -11848,7 +11779,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -12023,7 +11953,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -12186,7 +12115,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -12358,7 +12286,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -12534,7 +12461,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -12723,7 +12649,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -12922,7 +12847,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -13095,7 +13019,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -13259,7 +13182,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -13426,7 +13348,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -13590,7 +13511,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -13751,7 +13671,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -13914,7 +13833,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -14079,7 +13997,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -14250,7 +14167,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -14413,7 +14329,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -14574,7 +14489,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -14750,7 +14664,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -14911,7 +14824,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -15072,7 +14984,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -15237,7 +15148,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -15407,7 +15317,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -15576,7 +15485,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -15749,7 +15657,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -15922,7 +15829,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -16083,7 +15989,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -16244,7 +16149,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -16413,7 +16317,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -16575,7 +16478,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -16753,7 +16655,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -17001,7 +16902,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -17206,7 +17106,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -17371,7 +17270,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -17551,7 +17449,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -17725,7 +17622,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -17946,7 +17842,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -18161,7 +18056,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -18341,7 +18235,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -18527,7 +18420,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -18707,7 +18599,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -18924,7 +18815,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -19102,7 +18992,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -19271,7 +19160,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -19463,7 +19351,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -19636,7 +19523,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -19798,7 +19684,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -19960,7 +19845,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -20170,7 +20054,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -20344,7 +20227,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -20570,7 +20452,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -20729,7 +20610,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -20899,7 +20779,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -21073,7 +20952,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -21234,7 +21112,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -21411,7 +21288,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",                 "-Wno-builtin-macro-redefined",                 "-D__DATE__=",@@ -21583,7 +21459,6 @@                 "-fmsc-version=1916",                 "/guard:cf,nochecks",                 "-m64",-                "-fansi-escape-codes",                 "/Brepro",
AI Analysis
After analyzing the provided code diff, I can identify one consistent change made throughout the file:

1. Vulnerability Existed: not sure  
   ANSI Escape Code Injection Potential [File] [Multiple lines throughout the file]  
   [Old Code]  
   `"-fansi-escape-codes",`  
   [Fixed Code]  
   (removed this flag)

The change removes the `-fansi-escape-codes` compiler flag throughout the configuration file. While I'm not certain this was specifically a security fix, removing ANSI escape code support could potentially mitigate certain terminal injection vulnerabilities where malicious input could manipulate terminal behavior through escape sequences.

The diff shows this flag was removed from every compiler configuration block in the file (over 100 instances), suggesting it was a deliberate security or compatibility change. Without more context about why this flag was removed, I can't definitively say it was a security fix, but removing ANSI escape code support could be a defensive measure against terminal injection attacks.

No other security-relevant changes were apparent in the diff. The rest of the modifications appear to be either:
1. Removal of the `MULTI_MONITOR_SCREENSHARE` define (line 41804)
2. Various other minor configuration changes that don't appear security-related
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
dom/html/test/forms/test_input_password_click_show_password_button.html AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/dom/html/test/forms/test_input_password_click_show_password_button.html+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/dom/html/test/forms/test_input_password_click_show_password_button.html@@ -48,7 +48,7 @@   }   async function runTest() {-    await SpecialPowers.pushPrefEnv({set: [["layout.forms.input-type-show-password-button.enabled", true]]});+    await SpecialPowers.pushPrefEnv({set: [["layout.forms.reveal-password-button.enabled", true]]});     document.getElementById("content").style.display = "";     document.getElementById("content").getBoundingClientRect();     // test1 checks that the Show Password button becomes invisible when the value becomes empty
AI Analysis
Let me analyze this code diff for security fixes:

Vulnerability Existed: not sure
[Potential Feature Flag Naming Issue] [dom/html/test/forms/test_input_password_click_show_password_button.html] [Lines 48]
[Old Code]
await SpecialPowers.pushPrefEnv({set: [["layout.forms.input-type-show-password-button.enabled", true]]});
[Fixed Code]
await SpecialPowers.pushPrefEnv({set: [["layout.forms.reveal-password-button.enabled", true]]});

Additional Details:
The change appears to be a renaming of a feature flag from "input-type-show-password-button.enabled" to "reveal-password-button.enabled". While this doesn't directly indicate a security vulnerability, it might be related to security improvements in password field handling. The new name is more descriptive and standardized. However, without more context about the actual functionality changes, I can't definitively say if this was fixing a security vulnerability.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
toolkit/components/search/tests/xpcshell/searchconfigs/test_mailru.js AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/toolkit/components/search/tests/xpcshell/searchconfigs/test_mailru.js+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/toolkit/components/search/tests/xpcshell/searchconfigs/test_mailru.js@@ -35,4 +35,4 @@ add_task(async function test_searchConfig_mailru() {   await test.run();-});+}).skip();
AI Analysis
Analyzing the provided code diff, here's the security assessment:

Vulnerability Existed: no
[No Vulnerability Found] [toolkit/components/search/tests/xpcshell/searchconfigs/test_mailru.js] [Lines 35-35]
[Old Code]
  await test.run();
});
[Fixed Code]
  await test.run();
}).skip();

Additional Details:
1. The change simply adds `.skip()` to a test function, which is a common testing practice to temporarily disable a test without removing it
2. This appears to be a test maintenance change rather than a security fix
3. No security-related patterns or vulnerabilities are evident in this change
4. The modification doesn't affect any security-sensitive operations or data handling

The change is purely related to test functionality and doesn't impact the security posture of the application.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
gfx/thebes/gfxTextRun.cpp AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/gfx/thebes/gfxTextRun.cpp+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/gfx/thebes/gfxTextRun.cpp@@ -2403,20 +2403,21 @@ } already_AddRefed<gfxTextRun> gfxFontGroup::MakeHyphenTextRun(-    DrawTarget* aDrawTarget, uint32_t aAppUnitsPerDevUnit) {+    DrawTarget* aDrawTarget, gfx::ShapedTextFlags aFlags,+    uint32_t aAppUnitsPerDevUnit) {   // only use U+2010 if it is supported by the first font in the group;   // it's better to use ASCII '-' from the primary font than to fall back to   // U+2010 from some other, possibly poorly-matching face   static const char16_t hyphen = 0x2010;   gfxFont* font = GetFirstValidFont(uint32_t(hyphen));   if (font->HasCharacter(hyphen)) {-    return MakeTextRun(&hyphen, 1, aDrawTarget, aAppUnitsPerDevUnit,-                       ShapedTextFlags(), nsTextFrameUtils::Flags(), nullptr);+    return MakeTextRun(&hyphen, 1, aDrawTarget, aAppUnitsPerDevUnit, aFlags,+                       nsTextFrameUtils::Flags(), nullptr);   }   static const uint8_t dash = '-';-  return MakeTextRun(&dash, 1, aDrawTarget, aAppUnitsPerDevUnit,-                     ShapedTextFlags(), nsTextFrameUtils::Flags(), nullptr);+  return MakeTextRun(&dash, 1, aDrawTarget, aAppUnitsPerDevUnit, aFlags,+                     nsTextFrameUtils::Flags(), nullptr); } gfxFloat gfxFontGroup::GetHyphenWidth(@@ -2425,7 +2426,8 @@     RefPtr<DrawTarget> dt(aProvider->GetDrawTarget());     if (dt) {       RefPtr<gfxTextRun> hyphRun(-          MakeHyphenTextRun(dt, aProvider->GetAppUnitsPerDevUnit()));+          MakeHyphenTextRun(dt, aProvider->GetShapedTextFlags(),+                            aProvider->GetAppUnitsPerDevUnit()));       mHyphenWidth = hyphRun.get() ? hyphRun->GetAdvanceWidth() : 0;     }   }
AI Analysis
I'll analyze the provided code diff for security fixes following the specified format.

Vulnerability Existed: not sure
[Potential Missing Parameter Validation] [gfx/thebes/gfxTextRun.cpp] [Lines 2403-2426]
[Old Code]
already_AddRefed<gfxTextRun> gfxFontGroup::MakeHyphenTextRun(
    DrawTarget* aDrawTarget, uint32_t aAppUnitsPerDevUnit) {
...
    return MakeTextRun(&hyphen, 1, aDrawTarget, aAppUnitsPerDevUnit,
                       ShapedTextFlags(), nsTextFrameUtils::Flags(), nullptr);
...
    return MakeTextRun(&dash, 1, aDrawTarget, aAppUnitsPerDevUnit,
                     ShapedTextFlags(), nsTextFrameUtils::Flags(), nullptr);
[Fixed Code]
already_AddRefed<gfxTextRun> gfxFontGroup::MakeHyphenTextRun(
    DrawTarget* aDrawTarget, gfx::ShapedTextFlags aFlags,
    uint32_t aAppUnitsPerDevUnit) {
...
    return MakeTextRun(&hyphen, 1, aDrawTarget, aAppUnitsPerDevUnit, aFlags,
                       nsTextFrameUtils::Flags(), nullptr);
...
    return MakeTextRun(&dash, 1, aDrawTarget, aAppUnitsPerDevUnit, aFlags,
                     nsTextFrameUtils::Flags(), nullptr);

Additional Details:
The main change is the addition of a `gfx::ShapedTextFlags` parameter to the `MakeHyphenTextRun` function, which is then passed to `MakeTextRun`. While this doesn't appear to fix a specific known vulnerability, it could potentially prevent issues related to:
1. Inconsistent text shaping behavior if different parts of the code expected different shaping flags
2. Security implications if the default `ShapedTextFlags()` could lead to improper text rendering that might be exploitable in some contexts

However, without more context about how this function is used and what security implications the shaping flags have, I can't definitively identify a specific vulnerability being fixed. The change appears to be more about consistency and proper parameter passing rather than fixing a clear security hole.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
testing/web-platform/tests/css/css-shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-022.html AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/testing/web-platform/tests/css/css-shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-022.html+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/testing/web-platform/tests/css/css-shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-022.html@@ -9,7 +9,6 @@   <link rel="author" title="Mozilla" href="http://www.mozilla.org/">   <link rel="help" href="https://drafts.csswg.org/css-shapes-1/#supported-basic-shapes">   <link rel="match" href="reference/shape-outside-polygon-022-ref.html">-  <meta name="flags" content="">   <meta name="assert" content="Test the boxes are wrapping around the left float shape defined by the polygon(60px 20px, 100px 60px, 20px 60px, 60px 100px) border-box value under vertical-lr writing-mode.">   <style>   .container {
AI Analysis
Based on the provided diff, I'll analyze it for potential security vulnerabilities:

1. Vulnerability Existed: no
No specific vulnerability found [testing/web-platform/tests/css/css-shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-022.html] [Lines 9]
Old Code: <meta name="flags" content="">
Fixed Code: (removed line)

Additional Details:
- The change simply removes an empty meta "flags" tag which appears to be a test configuration element
- No security implications are apparent from this change
- This seems to be a test cleanup rather than a security fix

No known vulnerability names apply to this change as it doesn't affect any security-relevant functionality. The modification appears to be part of routine test maintenance.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
taskcluster/ci/test/variants.yml AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/taskcluster/ci/test/variants.yml+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/taskcluster/ci/test/variants.yml@@ -8,6 +8,16 @@         mozharness:             extra-options:                 - "--disable-e10s"++headless:+    description: "{description} without a window"+    suffix: "headless"+    replace:+        tier: 2+    merge:+        mozharness:+            extra-options:+                - "--headless" a11y-checks:     description: "{description} with accessibility checks enabled"@@ -81,33 +91,9 @@                 - "--setpref=fission.autostart=true"                 - "--enable-xorigin-tests"-fission-webrender-sw:-    description: "{description} with software webrender enabled"-    contact: aosmond-    suffix: "fis-swr"-    merge:-        webrender: true-        mozharness:-            extra-options:-                - "--setpref=gfx.webrender.software=true"-                - "--setpref=fission.autostart=true"--# TODO: After 2022-01-01, verify this variant is still needed.-fission-webgl-ipc:-    description: "{description} with fission and WebGL IPC process enabled"-    contact: jgilbert-    suffix: "fis-gli"-    replace:-        e10s: true-    merge:-        mozharness:-            extra-options:-                - "--setpref=fission.autostart=true"-                - "--setpref=dom.serviceWorkers.parent_intercept=true"-                - "--setpref=webgl.out-of-process=true"- socketprocess:     description: "{description} with socket process enabled"+    contact: kershaw     suffix: "spi"     merge:         mozharness:@@ -117,6 +103,7 @@ socketprocess_networking:     description: "{description} with networking on socket process enabled"+    contact: kershaw     suffix: "spi-nw"     merge:         mozharness:@@ -166,3 +153,14 @@             extra-options:                 - "--setpref=devtools.every-frame-target.enabled=false"                 - "--setpref=fission.autostart=false"++dynamic-first-party-isolation:+    description: "{description} with dFPI enabled"+    contact: timhuang+    suffix: "dfpi"+    replace:+        tier: 3+    merge:+        mozharness:+            extra-options:+                - "--setpref=network.cookie.cookieBehavior=5"
AI Analysis
Based on the provided diff, I'll analyze the changes for potential security fixes. The diff shows several changes to test variants configuration, but most appear to be feature additions or modifications rather than security fixes. Here's my analysis:

1. Vulnerability Existed: not sure
   [Potential Configuration Change] [taskcluster/ci/test/variants.yml] [Lines 8-16]
   [Old Code: (none - new addition)]
   [Fixed Code: headless test variant added]

2. Vulnerability Existed: not sure
   [Potential Configuration Change] [taskcluster/ci/test/variants.yml] [Lines 81-91]
   [Old Code: fission-webrender-sw and fission-webgl-ipc variants]
   [Fixed Code: removed these variants]

3. Vulnerability Existed: not sure
   [Potential Configuration Change] [taskcluster/ci/test/variants.yml] [Lines 117, 126]
   [Old Code: socketprocess variants without contact info]
   [Fixed Code: added contact: kershaw to socketprocess variants]

4. Vulnerability Existed: not sure
   [Potential Configuration Change] [taskcluster/ci/test/variants.yml] [Lines 153-163]
   [Old Code: (none - new addition)]
   [Fixed Code: dynamic-first-party-isolation (dFPI) variant added]

The changes appear to be primarily about:
1. Adding a new headless test variant
2. Removing some older test variants
3. Adding contact information for socket process tests
4. Adding a new test variant for dynamic First-Party Isolation (dFPI)

While some of these changes relate to security features (like dFPI), I don't see clear evidence of security vulnerabilities being fixed in this diff. The changes seem more focused on test configuration management and feature testing.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.rgb-percent.worker.js AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.rgb-percent.worker.js+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/testing/web-platform/tests/html/canvas/offscreen/fill-and-stroke-styles/2d.fillStyle.parse.rgb-percent.worker.js@@ -13,14 +13,14 @@ }); t.step(function() {-var offscreenCanvas = new OffscreenCanvas(100, 50);-var ctx = offscreenCanvas.getContext('2d');+var canvas = new OffscreenCanvas(100, 50);+var ctx = canvas.getContext('2d'); ctx.fillStyle = '#f00'; ctx.fillStyle = 'rgb(0% ,100% ,0%)'; ctx.fillRect(0, 0, 100, 50);-_assertPixel(offscreenCanvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255");+_assertPixel(canvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255"); t.done(); });
AI Analysis
Based on the provided diff, I'll analyze it for potential security vulnerabilities:

1. Vulnerability Existed: no
    No specific vulnerability found [File] [Lines 13-14, 20]
    Old Code: 
    var offscreenCanvas = new OffscreenCanvas(100, 50);
    var ctx = offscreenCanvas.getContext('2d');
    _assertPixel(offscreenCanvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255");
    
    Fixed Code:
    var canvas = new OffscreenCanvas(100, 50);
    var ctx = canvas.getContext('2d');
    _assertPixel(canvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255");

Additional Details:
- The changes appear to be purely variable renaming (from `offscreenCanvas` to `canvas`), which doesn't indicate any security vulnerability.
- The functionality remains exactly the same, just with a different variable name.
- No security-related patterns (like input validation, XSS, etc.) are being modified in this diff.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp@@ -72,17 +72,20 @@ // Note: This doesn't run on the ffmpeg TaskQueue, it runs on some other media // taskqueue MediaResult FFmpegDataDecoder<LIBAV_VER>::InitDecoder() {-  FFMPEG_LOG("Initialising FFmpeg decoder.");+  FFMPEG_LOG("Initialising FFmpeg decoder");   AVCodec* codec = FindAVCodec(mLib, mCodecID);   if (!codec) {+    FFMPEG_LOG("  unable to find codec");     return MediaResult(NS_ERROR_DOM_MEDIA_FATAL_ERR,-                       RESULT_DETAIL("Couldn't find ffmpeg decoder"));-  }+                       RESULT_DETAIL("unable to find codec"));+  }+  FFMPEG_LOG("  codec %s : %s", codec->name, codec->long_name);   StaticMutexAutoLock mon(sMutex);   if (!(mCodecContext = mLib->avcodec_alloc_context3(codec))) {+    FFMPEG_LOG("  couldn't init ffmpeg context");     return MediaResult(NS_ERROR_OUT_OF_MEMORY,                        RESULT_DETAIL("Couldn't init ffmpeg context"));   }@@ -99,6 +102,7 @@   InitCodecContext();   MediaResult ret = AllocateExtraData();   if (NS_FAILED(ret)) {+    FFMPEG_LOG("  failed to allocate extra data");     mLib->av_freep(&mCodecContext);     return ret;   }@@ -111,11 +115,12 @@   if (mLib->avcodec_open2(mCodecContext, codec, nullptr) < 0) {     mLib->av_freep(&mCodecContext);+    FFMPEG_LOG("  Couldn't open avcodec");     return MediaResult(NS_ERROR_DOM_MEDIA_FATAL_ERR,-                       RESULT_DETAIL("Couldn't initialise ffmpeg decoder"));-  }--  FFMPEG_LOG("FFmpeg init successful.");+                       RESULT_DETAIL("Couldn't open avcodec"));+  }++  FFMPEG_LOG("  FFmpeg decoder init successful.");   return NS_OK; }@@ -271,4 +276,18 @@   return aLib->avcodec_find_decoder(aCodec); }+#ifdef MOZ_WAYLAND+/* static */ AVCodec* FFmpegDataDecoder<LIBAV_VER>::FindHardwareAVCodec(+    FFmpegLibWrapper* aLib, AVCodecID aCodec) {+  void* opaque = nullptr;+  while (AVCodec* codec = aLib->av_codec_iterate(&opaque)) {+    if (codec->id == aCodec && aLib->av_codec_is_decoder(codec) &&+        aLib->avcodec_get_hw_config(codec, 0)) {+      return codec;+    }+  }+  return nullptr;+}+#endif+ }  // namespace mozilla
AI Analysis
Analyzing the provided code diff for security fixes:

1. Vulnerability Existed: not sure
   [Improved Error Logging] [dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp] [72-115]
   [Old Code]
   FFMPEG_LOG("Initialising FFmpeg decoder.");
   return MediaResult(NS_ERROR_DOM_MEDIA_FATAL_ERR,
                      RESULT_DETAIL("Couldn't find ffmpeg decoder"));
   [Fixed Code]
   FFMPEG_LOG("Initialising FFmpeg decoder");
   FFMPEG_LOG("  unable to find codec");
   return MediaResult(NS_ERROR_DOM_MEDIA_FATAL_ERR,
                      RESULT_DETAIL("unable to find codec"));

   Additional Details: The changes improve error logging but don't appear to fix a specific vulnerability.

2. Vulnerability Existed: not sure
   [Memory Leak Prevention] [dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp] [99-102]
   [Old Code]
   MediaResult ret = AllocateExtraData();
   if (NS_FAILED(ret)) {
     return ret;
   [Fixed Code]
   MediaResult ret = AllocateExtraData();
   if (NS_FAILED(ret)) {
     FFMPEG_LOG("  failed to allocate extra data");
     mLib->av_freep(&mCodecContext);
     return ret;

   Additional Details: The change ensures proper cleanup of mCodecContext when allocation fails, preventing potential memory leaks, but it's not clear if this was an exploitable vulnerability.

3. Vulnerability Existed: no
   [New Feature Addition] [dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp] [271-282]
   [Old Code]
   (No equivalent code existed)
   [Fixed Code]
   #ifdef MOZ_WAYLAND
   /* static */ AVCodec* FFmpegDataDecoder<LIBAV_VER>::FindHardwareAVCodec(
       FFmpegLibWrapper* aLib, AVCodecID aCodec) {
     void* opaque = nullptr;
     while (AVCodec* codec = aLib->av_codec_iterate(&opaque)) {
       if (codec->id == aCodec && aLib->av_codec_is_decoder(codec) &&
           aLib->avcodec_get_hw_config(codec, 0)) {
         return codec;
       }
     }
     return nullptr;
   }
   #endif

   Additional Details: This appears to be a new feature addition for Wayland hardware codec support rather than a security fix.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
testing/docs/ci-configs/index.md AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/testing/docs/ci-configs/index.md+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/testing/docs/ci-configs/index.md@@ -1,6 +1,6 @@ # Configuration Changes-This process outlines how Mozilla will handle configuration changes.  For a list of configuration changes, please see the [schedule](schedule.html)+This process outlines how Mozilla will handle configuration changes.  For a list of configuration changes, please see the [schedule](schedule.md) ## Infrastructure setup (2-4 weeks)
AI Analysis
Let me analyze the provided code diff for security fixes.

Vulnerability Existed: not sure
[Potential Information Disclosure] [testing/docs/ci-configs/index.md] [Lines 1]
[Old Code] [schedule](schedule.html)
[Fixed Code] [schedule](schedule.md)

Additional Details:
- The change involves switching from an HTML file reference to a Markdown file reference
- While this doesn't appear to be a direct security fix, it could potentially relate to:
  * Preventing directory traversal if the HTML file was vulnerable
  * Changing to a more secure file format
  * Updating documentation to reflect more secure practices
- Without more context about the files involved, I can't determine if this was an actual security fix
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
browser/themes/linux/downloads/downloads.css AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/browser/themes/linux/downloads/downloads.css+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/browser/themes/linux/downloads/downloads.css@@ -13,8 +13,7 @@   --downloads-item-disabled-opacity: 0.6; }-@keyfocus@ @itemFocused@,-@keyfocus@ #downloadsSummary:focus,+#downloadsPanel[keyfocus] :is(#downloadsListBox:focus > richlistitem[selected], #downloadsSummary:focus), .downloadButton:focus {   outline: 1px -moz-dialogtext dotted;   outline-offset: -1px;
AI Analysis
Let me analyze this CSS diff for potential security issues.

Vulnerability Existed: no
[No specific vulnerability] [browser/themes/linux/downloads/downloads.css] [Lines 13-16]
[Old Code]
@keyfocus@ @itemFocused@,
@keyfocus@ #downloadsSummary:focus,
[Fixed Code]
#downloadsPanel[keyfocus] :is(#downloadsListBox:focus > richlistitem[selected], #downloadsSummary:focus),

Analysis:
1. This appears to be a CSS selector change for better focus styling in the downloads panel
2. The change improves selector specificity and modernizes the syntax using :is()
3. No security vulnerability is apparent - this is a UI/UX improvement
4. The change makes the focus styling more consistent and maintainable

The modification doesn't show any signs of fixing a security issue, but rather improves the code quality and maintainability of the focus styling implementation.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
third_party/rust/ash/src/vk/bitflags.rs AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/third_party/rust/ash/src/vk/bitflags.rs+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/third_party/rust/ash/src/vk/bitflags.rs@@ -3,13 +3,13 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineCacheCreateFlagBits.html>"] pub struct PipelineCacheCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(PipelineCacheCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(PipelineCacheCreateFlags, Flags); impl PipelineCacheCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkQueueFlagBits.html>"] pub struct QueueFlags(pub(crate) Flags);-vk_bitflags_wrapped!(QueueFlags, 0b1111, Flags);+vk_bitflags_wrapped!(QueueFlags, Flags); impl QueueFlags {     #[doc = "Queue supports graphics operations"]     pub const GRAPHICS: Self = Self(0b1);@@ -24,7 +24,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCullModeFlagBits.html>"] pub struct CullModeFlags(pub(crate) Flags);-vk_bitflags_wrapped!(CullModeFlags, 0b11, Flags);+vk_bitflags_wrapped!(CullModeFlags, Flags); impl CullModeFlags {     pub const NONE: Self = Self(0);     pub const FRONT: Self = Self(0b1);@@ -35,19 +35,19 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkRenderPassCreateFlagBits.html>"] pub struct RenderPassCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(RenderPassCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(RenderPassCreateFlags, Flags); impl RenderPassCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDeviceQueueCreateFlagBits.html>"] pub struct DeviceQueueCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(DeviceQueueCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(DeviceQueueCreateFlags, Flags); impl DeviceQueueCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkMemoryPropertyFlagBits.html>"] pub struct MemoryPropertyFlags(pub(crate) Flags);-vk_bitflags_wrapped!(MemoryPropertyFlags, 0b1_1111, Flags);+vk_bitflags_wrapped!(MemoryPropertyFlags, Flags); impl MemoryPropertyFlags {     #[doc = "If otherwise stated, then allocate memory on device"]     pub const DEVICE_LOCAL: Self = Self(0b1);@@ -64,7 +64,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkMemoryHeapFlagBits.html>"] pub struct MemoryHeapFlags(pub(crate) Flags);-vk_bitflags_wrapped!(MemoryHeapFlags, 0b1, Flags);+vk_bitflags_wrapped!(MemoryHeapFlags, Flags); impl MemoryHeapFlags {     #[doc = "If set, heap represents device memory"]     pub const DEVICE_LOCAL: Self = Self(0b1);@@ -73,7 +73,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkAccessFlagBits.html>"] pub struct AccessFlags(pub(crate) Flags);-vk_bitflags_wrapped!(AccessFlags, 0b1_1111_1111_1111_1111, Flags);+vk_bitflags_wrapped!(AccessFlags, Flags); impl AccessFlags {     #[doc = "Controls coherency of indirect command reads"]     pub const INDIRECT_COMMAND_READ: Self = Self(0b1);@@ -114,7 +114,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkBufferUsageFlagBits.html>"] pub struct BufferUsageFlags(pub(crate) Flags);-vk_bitflags_wrapped!(BufferUsageFlags, 0b1_1111_1111, Flags);+vk_bitflags_wrapped!(BufferUsageFlags, Flags); impl BufferUsageFlags {     #[doc = "Can be used as a source of transfer operations"]     pub const TRANSFER_SRC: Self = Self(0b1);@@ -139,7 +139,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkBufferCreateFlagBits.html>"] pub struct BufferCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(BufferCreateFlags, 0b111, Flags);+vk_bitflags_wrapped!(BufferCreateFlags, Flags); impl BufferCreateFlags {     #[doc = "Buffer should support sparse backing"]     pub const SPARSE_BINDING: Self = Self(0b1);@@ -152,11 +152,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkShaderStageFlagBits.html>"] pub struct ShaderStageFlags(pub(crate) Flags);-vk_bitflags_wrapped!(-    ShaderStageFlags,-    0b111_1111_1111_1111_1111_1111_1111_1111,-    Flags-);+vk_bitflags_wrapped!(ShaderStageFlags, Flags); impl ShaderStageFlags {     pub const VERTEX: Self = Self(0b1);     pub const TESSELLATION_CONTROL: Self = Self(0b10);@@ -171,7 +167,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkImageUsageFlagBits.html>"] pub struct ImageUsageFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ImageUsageFlags, 0b1111_1111, Flags);+vk_bitflags_wrapped!(ImageUsageFlags, Flags); impl ImageUsageFlags {     #[doc = "Can be used as a source of transfer operations"]     pub const TRANSFER_SRC: Self = Self(0b1);@@ -194,7 +190,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkImageCreateFlagBits.html>"] pub struct ImageCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ImageCreateFlags, 0b1_1111, Flags);+vk_bitflags_wrapped!(ImageCreateFlags, Flags); impl ImageCreateFlags {     #[doc = "Image should support sparse backing"]     pub const SPARSE_BINDING: Self = Self(0b1);@@ -211,19 +207,19 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkImageViewCreateFlagBits.html>"] pub struct ImageViewCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ImageViewCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(ImageViewCreateFlags, Flags); impl ImageViewCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSamplerCreateFlagBits.html>"] pub struct SamplerCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SamplerCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(SamplerCreateFlags, Flags); impl SamplerCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineCreateFlagBits.html>"] pub struct PipelineCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(PipelineCreateFlags, 0b111, Flags);+vk_bitflags_wrapped!(PipelineCreateFlags, Flags); impl PipelineCreateFlags {     pub const DISABLE_OPTIMIZATION: Self = Self(0b1);     pub const ALLOW_DERIVATIVES: Self = Self(0b10);@@ -233,13 +229,13 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineShaderStageCreateFlagBits.html>"] pub struct PipelineShaderStageCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(PipelineShaderStageCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(PipelineShaderStageCreateFlags, Flags); impl PipelineShaderStageCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkColorComponentFlagBits.html>"] pub struct ColorComponentFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ColorComponentFlags, 0b1111, Flags);+vk_bitflags_wrapped!(ColorComponentFlags, Flags); impl ColorComponentFlags {     pub const R: Self = Self(0b1);     pub const G: Self = Self(0b10);@@ -250,7 +246,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkFenceCreateFlagBits.html>"] pub struct FenceCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(FenceCreateFlags, 0b1, Flags);+vk_bitflags_wrapped!(FenceCreateFlags, Flags); impl FenceCreateFlags {     pub const SIGNALED: Self = Self(0b1); }@@ -258,13 +254,13 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSemaphoreCreateFlagBits.html>"] pub struct SemaphoreCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SemaphoreCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(SemaphoreCreateFlags, Flags); impl SemaphoreCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkFormatFeatureFlagBits.html>"] pub struct FormatFeatureFlags(pub(crate) Flags);-vk_bitflags_wrapped!(FormatFeatureFlags, 0b1_1111_1111_1111, Flags);+vk_bitflags_wrapped!(FormatFeatureFlags, Flags); impl FormatFeatureFlags {     #[doc = "Format can be used for sampled images (SAMPLED_IMAGE and COMBINED_IMAGE_SAMPLER descriptor types)"]     pub const SAMPLED_IMAGE: Self = Self(0b1);@@ -297,7 +293,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkQueryControlFlagBits.html>"] pub struct QueryControlFlags(pub(crate) Flags);-vk_bitflags_wrapped!(QueryControlFlags, 0b1, Flags);+vk_bitflags_wrapped!(QueryControlFlags, Flags); impl QueryControlFlags {     #[doc = "Require precise results to be collected by the query"]     pub const PRECISE: Self = Self(0b1);@@ -306,7 +302,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkQueryResultFlagBits.html>"] pub struct QueryResultFlags(pub(crate) Flags);-vk_bitflags_wrapped!(QueryResultFlags, 0b1111, Flags);+vk_bitflags_wrapped!(QueryResultFlags, Flags); impl QueryResultFlags {     #[doc = "Results of the queries are written to the destination buffer as 64-bit values"]     pub const TYPE_64: Self = Self(0b1);@@ -321,7 +317,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCommandBufferUsageFlagBits.html>"] pub struct CommandBufferUsageFlags(pub(crate) Flags);-vk_bitflags_wrapped!(CommandBufferUsageFlags, 0b111, Flags);+vk_bitflags_wrapped!(CommandBufferUsageFlags, Flags); impl CommandBufferUsageFlags {     pub const ONE_TIME_SUBMIT: Self = Self(0b1);     pub const RENDER_PASS_CONTINUE: Self = Self(0b10);@@ -332,7 +328,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkQueryPipelineStatisticFlagBits.html>"] pub struct QueryPipelineStatisticFlags(pub(crate) Flags);-vk_bitflags_wrapped!(QueryPipelineStatisticFlags, 0b111_1111_1111, Flags);+vk_bitflags_wrapped!(QueryPipelineStatisticFlags, Flags); impl QueryPipelineStatisticFlags {     #[doc = "Optional"]     pub const INPUT_ASSEMBLY_VERTICES: Self = Self(0b1);@@ -361,7 +357,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkImageAspectFlagBits.html>"] pub struct ImageAspectFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ImageAspectFlags, 0b1111, Flags);+vk_bitflags_wrapped!(ImageAspectFlags, Flags); impl ImageAspectFlags {     pub const COLOR: Self = Self(0b1);     pub const DEPTH: Self = Self(0b10);@@ -372,7 +368,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSparseImageFormatFlagBits.html>"] pub struct SparseImageFormatFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SparseImageFormatFlags, 0b111, Flags);+vk_bitflags_wrapped!(SparseImageFormatFlags, Flags); impl SparseImageFormatFlags {     #[doc = "Image uses a single mip tail region for all array layers"]     pub const SINGLE_MIPTAIL: Self = Self(0b1);@@ -385,7 +381,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSparseMemoryBindFlagBits.html>"] pub struct SparseMemoryBindFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SparseMemoryBindFlags, 0b1, Flags);+vk_bitflags_wrapped!(SparseMemoryBindFlags, Flags); impl SparseMemoryBindFlags {     #[doc = "Operation binds resource metadata to memory"]     pub const METADATA: Self = Self(0b1);@@ -394,7 +390,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineStageFlagBits.html>"] pub struct PipelineStageFlags(pub(crate) Flags);-vk_bitflags_wrapped!(PipelineStageFlags, 0b1_1111_1111_1111_1111, Flags);+vk_bitflags_wrapped!(PipelineStageFlags, Flags); impl PipelineStageFlags {     #[doc = "Before subsequent commands are processed"]     pub const TOP_OF_PIPE: Self = Self(0b1);@@ -435,7 +431,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCommandPoolCreateFlagBits.html>"] pub struct CommandPoolCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(CommandPoolCreateFlags, 0b11, Flags);+vk_bitflags_wrapped!(CommandPoolCreateFlags, Flags); impl CommandPoolCreateFlags {     #[doc = "Command buffers have a short lifetime"]     pub const TRANSIENT: Self = Self(0b1);@@ -446,7 +442,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCommandPoolResetFlagBits.html>"] pub struct CommandPoolResetFlags(pub(crate) Flags);-vk_bitflags_wrapped!(CommandPoolResetFlags, 0b1, Flags);+vk_bitflags_wrapped!(CommandPoolResetFlags, Flags); impl CommandPoolResetFlags {     #[doc = "Release resources owned by the pool"]     pub const RELEASE_RESOURCES: Self = Self(0b1);@@ -455,7 +451,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCommandBufferResetFlagBits.html>"] pub struct CommandBufferResetFlags(pub(crate) Flags);-vk_bitflags_wrapped!(CommandBufferResetFlags, 0b1, Flags);+vk_bitflags_wrapped!(CommandBufferResetFlags, Flags); impl CommandBufferResetFlags {     #[doc = "Release resources owned by the buffer"]     pub const RELEASE_RESOURCES: Self = Self(0b1);@@ -464,7 +460,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSampleCountFlagBits.html>"] pub struct SampleCountFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SampleCountFlags, 0b111_1111, Flags);+vk_bitflags_wrapped!(SampleCountFlags, Flags); impl SampleCountFlags {     #[doc = "Sample count 1 supported"]     pub const TYPE_1: Self = Self(0b1);@@ -485,7 +481,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkAttachmentDescriptionFlagBits.html>"] pub struct AttachmentDescriptionFlags(pub(crate) Flags);-vk_bitflags_wrapped!(AttachmentDescriptionFlags, 0b1, Flags);+vk_bitflags_wrapped!(AttachmentDescriptionFlags, Flags); impl AttachmentDescriptionFlags {     #[doc = "The attachment may alias physical memory of another attachment in the same render pass"]     pub const MAY_ALIAS: Self = Self(0b1);@@ -494,7 +490,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkStencilFaceFlagBits.html>"] pub struct StencilFaceFlags(pub(crate) Flags);-vk_bitflags_wrapped!(StencilFaceFlags, 0b11, Flags);+vk_bitflags_wrapped!(StencilFaceFlags, Flags); impl StencilFaceFlags {     #[doc = "Front face"]     pub const FRONT: Self = Self(0b1);@@ -502,14 +498,12 @@     pub const BACK: Self = Self(0b10);     #[doc = "Front and back faces"]     pub const FRONT_AND_BACK: Self = Self(0x0000_0003);-    #[deprecated = "Alias for backwards compatibility"]-    pub const STENCIL_FRONT_AND_BACK: Self = Self::FRONT_AND_BACK; } #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDescriptorPoolCreateFlagBits.html>"] pub struct DescriptorPoolCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(DescriptorPoolCreateFlags, 0b1, Flags);+vk_bitflags_wrapped!(DescriptorPoolCreateFlags, Flags); impl DescriptorPoolCreateFlags {     #[doc = "Descriptor sets may be freed individually"]     pub const FREE_DESCRIPTOR_SET: Self = Self(0b1);@@ -518,7 +512,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDependencyFlagBits.html>"] pub struct DependencyFlags(pub(crate) Flags);-vk_bitflags_wrapped!(DependencyFlags, 0b1, Flags);+vk_bitflags_wrapped!(DependencyFlags, Flags); impl DependencyFlags {     #[doc = "Dependency is per pixel region "]     pub const BY_REGION: Self = Self(0b1);@@ -527,7 +521,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSemaphoreWaitFlagBits.html>"] pub struct SemaphoreWaitFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SemaphoreWaitFlags, 0b1, Flags);+vk_bitflags_wrapped!(SemaphoreWaitFlags, Flags); impl SemaphoreWaitFlags {     pub const ANY: Self = Self(0b1); }@@ -535,7 +529,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDisplayPlaneAlphaFlagBitsKHR.html>"] pub struct DisplayPlaneAlphaFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(DisplayPlaneAlphaFlagsKHR, 0b1111, Flags);+vk_bitflags_wrapped!(DisplayPlaneAlphaFlagsKHR, Flags); impl DisplayPlaneAlphaFlagsKHR {     pub const OPAQUE: Self = Self(0b1);     pub const GLOBAL: Self = Self(0b10);@@ -546,7 +540,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCompositeAlphaFlagBitsKHR.html>"] pub struct CompositeAlphaFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(CompositeAlphaFlagsKHR, 0b1111, Flags);+vk_bitflags_wrapped!(CompositeAlphaFlagsKHR, Flags); impl CompositeAlphaFlagsKHR {     pub const OPAQUE: Self = Self(0b1);     pub const PRE_MULTIPLIED: Self = Self(0b10);@@ -557,7 +551,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSurfaceTransformFlagBitsKHR.html>"] pub struct SurfaceTransformFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(SurfaceTransformFlagsKHR, 0b1_1111_1111, Flags);+vk_bitflags_wrapped!(SurfaceTransformFlagsKHR, Flags); impl SurfaceTransformFlagsKHR {     pub const IDENTITY: Self = Self(0b1);     pub const ROTATE_90: Self = Self(0b10);@@ -573,7 +567,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSwapchainImageUsageFlagBitsANDROID.html>"] pub struct SwapchainImageUsageFlagsANDROID(pub(crate) Flags);-vk_bitflags_wrapped!(SwapchainImageUsageFlagsANDROID, 0b1, Flags);+vk_bitflags_wrapped!(SwapchainImageUsageFlagsANDROID, Flags); impl SwapchainImageUsageFlagsANDROID {     pub const SHARED: Self = Self(0b1); }@@ -581,7 +575,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDebugReportFlagBitsEXT.html>"] pub struct DebugReportFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(DebugReportFlagsEXT, 0b1_1111, Flags);+vk_bitflags_wrapped!(DebugReportFlagsEXT, Flags); impl DebugReportFlagsEXT {     pub const INFORMATION: Self = Self(0b1);     pub const WARNING: Self = Self(0b10);@@ -593,7 +587,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkExternalMemoryHandleTypeFlagBitsNV.html>"] pub struct ExternalMemoryHandleTypeFlagsNV(pub(crate) Flags);-vk_bitflags_wrapped!(ExternalMemoryHandleTypeFlagsNV, 0b1111, Flags);+vk_bitflags_wrapped!(ExternalMemoryHandleTypeFlagsNV, Flags); impl ExternalMemoryHandleTypeFlagsNV {     pub const OPAQUE_WIN32: Self = Self(0b1);     pub const OPAQUE_WIN32_KMT: Self = Self(0b10);@@ -604,7 +598,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkExternalMemoryFeatureFlagBitsNV.html>"] pub struct ExternalMemoryFeatureFlagsNV(pub(crate) Flags);-vk_bitflags_wrapped!(ExternalMemoryFeatureFlagsNV, 0b111, Flags);+vk_bitflags_wrapped!(ExternalMemoryFeatureFlagsNV, Flags); impl ExternalMemoryFeatureFlagsNV {     pub const DEDICATED_ONLY: Self = Self(0b1);     pub const EXPORTABLE: Self = Self(0b10);@@ -614,7 +608,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSubgroupFeatureFlagBits.html>"] pub struct SubgroupFeatureFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SubgroupFeatureFlags, 0b1111_1111, Flags);+vk_bitflags_wrapped!(SubgroupFeatureFlags, Flags); impl SubgroupFeatureFlags {     #[doc = "Basic subgroup operations"]     pub const BASIC: Self = Self(0b1);@@ -637,7 +631,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkIndirectCommandsLayoutUsageFlagBitsNV.html>"] pub struct IndirectCommandsLayoutUsageFlagsNV(pub(crate) Flags);-vk_bitflags_wrapped!(IndirectCommandsLayoutUsageFlagsNV, 0b111, Flags);+vk_bitflags_wrapped!(IndirectCommandsLayoutUsageFlagsNV, Flags); impl IndirectCommandsLayoutUsageFlagsNV {     pub const EXPLICIT_PREPROCESS: Self = Self(0b1);     pub const INDEXED_SEQUENCES: Self = Self(0b10);@@ -647,7 +641,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkIndirectStateFlagBitsNV.html>"] pub struct IndirectStateFlagsNV(pub(crate) Flags);-vk_bitflags_wrapped!(IndirectStateFlagsNV, 0b1, Flags);+vk_bitflags_wrapped!(IndirectStateFlagsNV, Flags); impl IndirectStateFlagsNV {     pub const FLAG_FRONTFACE: Self = Self(0b1); }@@ -655,19 +649,19 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPrivateDataSlotCreateFlagBitsEXT.html>"] pub struct PrivateDataSlotCreateFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(PrivateDataSlotCreateFlagsEXT, 0b0, Flags);+vk_bitflags_wrapped!(PrivateDataSlotCreateFlagsEXT, Flags); impl PrivateDataSlotCreateFlagsEXT {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDescriptorSetLayoutCreateFlagBits.html>"] pub struct DescriptorSetLayoutCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(DescriptorSetLayoutCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(DescriptorSetLayoutCreateFlags, Flags); impl DescriptorSetLayoutCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkExternalMemoryHandleTypeFlagBits.html>"] pub struct ExternalMemoryHandleTypeFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ExternalMemoryHandleTypeFlags, 0b111_1111, Flags);+vk_bitflags_wrapped!(ExternalMemoryHandleTypeFlags, Flags); impl ExternalMemoryHandleTypeFlags {     pub const OPAQUE_FD: Self = Self(0b1);     pub const OPAQUE_WIN32: Self = Self(0b10);@@ -681,7 +675,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkExternalMemoryFeatureFlagBits.html>"] pub struct ExternalMemoryFeatureFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ExternalMemoryFeatureFlags, 0b111, Flags);+vk_bitflags_wrapped!(ExternalMemoryFeatureFlags, Flags); impl ExternalMemoryFeatureFlags {     pub const DEDICATED_ONLY: Self = Self(0b1);     pub const EXPORTABLE: Self = Self(0b10);@@ -691,7 +685,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkExternalSemaphoreHandleTypeFlagBits.html>"] pub struct ExternalSemaphoreHandleTypeFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ExternalSemaphoreHandleTypeFlags, 0b1_1111, Flags);+vk_bitflags_wrapped!(ExternalSemaphoreHandleTypeFlags, Flags); impl ExternalSemaphoreHandleTypeFlags {     pub const OPAQUE_FD: Self = Self(0b1);     pub const OPAQUE_WIN32: Self = Self(0b10);@@ -704,7 +698,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkExternalSemaphoreFeatureFlagBits.html>"] pub struct ExternalSemaphoreFeatureFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ExternalSemaphoreFeatureFlags, 0b11, Flags);+vk_bitflags_wrapped!(ExternalSemaphoreFeatureFlags, Flags); impl ExternalSemaphoreFeatureFlags {     pub const EXPORTABLE: Self = Self(0b1);     pub const IMPORTABLE: Self = Self(0b10);@@ -713,7 +707,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSemaphoreImportFlagBits.html>"] pub struct SemaphoreImportFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SemaphoreImportFlags, 0b1, Flags);+vk_bitflags_wrapped!(SemaphoreImportFlags, Flags); impl SemaphoreImportFlags {     pub const TEMPORARY: Self = Self(0b1); }@@ -721,7 +715,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkExternalFenceHandleTypeFlagBits.html>"] pub struct ExternalFenceHandleTypeFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ExternalFenceHandleTypeFlags, 0b1111, Flags);+vk_bitflags_wrapped!(ExternalFenceHandleTypeFlags, Flags); impl ExternalFenceHandleTypeFlags {     pub const OPAQUE_FD: Self = Self(0b1);     pub const OPAQUE_WIN32: Self = Self(0b10);@@ -732,7 +726,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkExternalFenceFeatureFlagBits.html>"] pub struct ExternalFenceFeatureFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ExternalFenceFeatureFlags, 0b11, Flags);+vk_bitflags_wrapped!(ExternalFenceFeatureFlags, Flags); impl ExternalFenceFeatureFlags {     pub const EXPORTABLE: Self = Self(0b1);     pub const IMPORTABLE: Self = Self(0b10);@@ -741,7 +735,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkFenceImportFlagBits.html>"] pub struct FenceImportFlags(pub(crate) Flags);-vk_bitflags_wrapped!(FenceImportFlags, 0b1, Flags);+vk_bitflags_wrapped!(FenceImportFlags, Flags); impl FenceImportFlags {     pub const TEMPORARY: Self = Self(0b1); }@@ -749,7 +743,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSurfaceCounterFlagBitsEXT.html>"] pub struct SurfaceCounterFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(SurfaceCounterFlagsEXT, 0b1, Flags);+vk_bitflags_wrapped!(SurfaceCounterFlagsEXT, Flags); impl SurfaceCounterFlagsEXT {     pub const VBLANK: Self = Self(0b1); }@@ -757,7 +751,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPeerMemoryFeatureFlagBits.html>"] pub struct PeerMemoryFeatureFlags(pub(crate) Flags);-vk_bitflags_wrapped!(PeerMemoryFeatureFlags, 0b1111, Flags);+vk_bitflags_wrapped!(PeerMemoryFeatureFlags, Flags); impl PeerMemoryFeatureFlags {     #[doc = "Can read with vkCmdCopy commands"]     pub const COPY_SRC: Self = Self(0b1);@@ -772,7 +766,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkMemoryAllocateFlagBits.html>"] pub struct MemoryAllocateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(MemoryAllocateFlags, 0b1, Flags);+vk_bitflags_wrapped!(MemoryAllocateFlags, Flags); impl MemoryAllocateFlags {     #[doc = "Force allocation on specific devices"]     pub const DEVICE_MASK: Self = Self(0b1);@@ -781,7 +775,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDeviceGroupPresentModeFlagBitsKHR.html>"] pub struct DeviceGroupPresentModeFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(DeviceGroupPresentModeFlagsKHR, 0b1111, Flags);+vk_bitflags_wrapped!(DeviceGroupPresentModeFlagsKHR, Flags); impl DeviceGroupPresentModeFlagsKHR {     #[doc = "Present from local memory"]     pub const LOCAL: Self = Self(0b1);@@ -796,19 +790,19 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSwapchainCreateFlagBitsKHR.html>"] pub struct SwapchainCreateFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(SwapchainCreateFlagsKHR, 0b0, Flags);+vk_bitflags_wrapped!(SwapchainCreateFlagsKHR, Flags); impl SwapchainCreateFlagsKHR {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSubpassDescriptionFlagBits.html>"] pub struct SubpassDescriptionFlags(pub(crate) Flags);-vk_bitflags_wrapped!(SubpassDescriptionFlags, 0b0, Flags);+vk_bitflags_wrapped!(SubpassDescriptionFlags, Flags); impl SubpassDescriptionFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDebugUtilsMessageSeverityFlagBitsEXT.html>"] pub struct DebugUtilsMessageSeverityFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(DebugUtilsMessageSeverityFlagsEXT, 0b1_0001_0001_0001, Flags);+vk_bitflags_wrapped!(DebugUtilsMessageSeverityFlagsEXT, Flags); impl DebugUtilsMessageSeverityFlagsEXT {     pub const VERBOSE: Self = Self(0b1);     pub const INFO: Self = Self(0b1_0000);@@ -819,7 +813,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDebugUtilsMessageTypeFlagBitsEXT.html>"] pub struct DebugUtilsMessageTypeFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(DebugUtilsMessageTypeFlagsEXT, 0b111, Flags);+vk_bitflags_wrapped!(DebugUtilsMessageTypeFlagsEXT, Flags); impl DebugUtilsMessageTypeFlagsEXT {     pub const GENERAL: Self = Self(0b1);     pub const VALIDATION: Self = Self(0b10);@@ -829,7 +823,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDescriptorBindingFlagBits.html>"] pub struct DescriptorBindingFlags(pub(crate) Flags);-vk_bitflags_wrapped!(DescriptorBindingFlags, 0b1111, Flags);+vk_bitflags_wrapped!(DescriptorBindingFlags, Flags); impl DescriptorBindingFlags {     pub const UPDATE_AFTER_BIND: Self = Self(0b1);     pub const UPDATE_UNUSED_WHILE_PENDING: Self = Self(0b10);@@ -840,7 +834,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkConditionalRenderingFlagBitsEXT.html>"] pub struct ConditionalRenderingFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(ConditionalRenderingFlagsEXT, 0b1, Flags);+vk_bitflags_wrapped!(ConditionalRenderingFlagsEXT, Flags); impl ConditionalRenderingFlagsEXT {     pub const INVERTED: Self = Self(0b1); }@@ -848,7 +842,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkResolveModeFlagBits.html>"] pub struct ResolveModeFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ResolveModeFlags, 0b1111, Flags);+vk_bitflags_wrapped!(ResolveModeFlags, Flags); impl ResolveModeFlags {     pub const NONE: Self = Self(0);     pub const SAMPLE_ZERO: Self = Self(0b1);@@ -860,7 +854,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkGeometryInstanceFlagBitsKHR.html>"] pub struct GeometryInstanceFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(GeometryInstanceFlagsKHR, 0b1111, Flags);+vk_bitflags_wrapped!(GeometryInstanceFlagsKHR, Flags); impl GeometryInstanceFlagsKHR {     pub const TRIANGLE_FACING_CULL_DISABLE: Self = Self(0b1);     pub const TRIANGLE_FLIP_FACING: Self = Self(0b10);@@ -872,7 +866,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkGeometryFlagBitsKHR.html>"] pub struct GeometryFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(GeometryFlagsKHR, 0b11, Flags);+vk_bitflags_wrapped!(GeometryFlagsKHR, Flags); impl GeometryFlagsKHR {     pub const OPAQUE: Self = Self(0b1);     pub const NO_DUPLICATE_ANY_HIT_INVOCATION: Self = Self(0b10);@@ -881,7 +875,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkBuildAccelerationStructureFlagBitsKHR.html>"] pub struct BuildAccelerationStructureFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(BuildAccelerationStructureFlagsKHR, 0b1_1111, Flags);+vk_bitflags_wrapped!(BuildAccelerationStructureFlagsKHR, Flags); impl BuildAccelerationStructureFlagsKHR {     pub const ALLOW_UPDATE: Self = Self(0b1);     pub const ALLOW_COMPACTION: Self = Self(0b10);@@ -893,7 +887,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkAccelerationStructureCreateFlagBitsKHR.html>"] pub struct AccelerationStructureCreateFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(AccelerationStructureCreateFlagsKHR, 0b1, Flags);+vk_bitflags_wrapped!(AccelerationStructureCreateFlagsKHR, Flags); impl AccelerationStructureCreateFlagsKHR {     pub const DEVICE_ADDRESS_CAPTURE_REPLAY: Self = Self(0b1); }@@ -901,13 +895,13 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkFramebufferCreateFlagBits.html>"] pub struct FramebufferCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(FramebufferCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(FramebufferCreateFlags, Flags); impl FramebufferCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDeviceDiagnosticsConfigFlagBitsNV.html>"] pub struct DeviceDiagnosticsConfigFlagsNV(pub(crate) Flags);-vk_bitflags_wrapped!(DeviceDiagnosticsConfigFlagsNV, 0b111, Flags);+vk_bitflags_wrapped!(DeviceDiagnosticsConfigFlagsNV, Flags); impl DeviceDiagnosticsConfigFlagsNV {     pub const ENABLE_SHADER_DEBUG_INFO: Self = Self(0b1);     pub const ENABLE_RESOURCE_TRACKING: Self = Self(0b10);@@ -917,7 +911,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineCreationFeedbackFlagBitsEXT.html>"] pub struct PipelineCreationFeedbackFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(PipelineCreationFeedbackFlagsEXT, 0b111, Flags);+vk_bitflags_wrapped!(PipelineCreationFeedbackFlagsEXT, Flags); impl PipelineCreationFeedbackFlagsEXT {     pub const VALID: Self = Self(0b1);     pub const APPLICATION_PIPELINE_CACHE_HIT: Self = Self(0b10);@@ -927,7 +921,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPerformanceCounterDescriptionFlagBitsKHR.html>"] pub struct PerformanceCounterDescriptionFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(PerformanceCounterDescriptionFlagsKHR, 0b11, Flags);+vk_bitflags_wrapped!(PerformanceCounterDescriptionFlagsKHR, Flags); impl PerformanceCounterDescriptionFlagsKHR {     pub const PERFORMANCE_IMPACTING: Self = Self(0b1);     pub const CONCURRENTLY_IMPACTED: Self = Self(0b10);@@ -936,31 +930,31 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkAcquireProfilingLockFlagBitsKHR.html>"] pub struct AcquireProfilingLockFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(AcquireProfilingLockFlagsKHR, 0b0, Flags);+vk_bitflags_wrapped!(AcquireProfilingLockFlagsKHR, Flags); impl AcquireProfilingLockFlagsKHR {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkShaderCorePropertiesFlagBitsAMD.html>"] pub struct ShaderCorePropertiesFlagsAMD(pub(crate) Flags);-vk_bitflags_wrapped!(ShaderCorePropertiesFlagsAMD, 0b0, Flags);+vk_bitflags_wrapped!(ShaderCorePropertiesFlagsAMD, Flags); impl ShaderCorePropertiesFlagsAMD {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkShaderModuleCreateFlagBits.html>"] pub struct ShaderModuleCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(ShaderModuleCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(ShaderModuleCreateFlags, Flags); impl ShaderModuleCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineCompilerControlFlagBitsAMD.html>"] pub struct PipelineCompilerControlFlagsAMD(pub(crate) Flags);-vk_bitflags_wrapped!(PipelineCompilerControlFlagsAMD, 0b0, Flags);+vk_bitflags_wrapped!(PipelineCompilerControlFlagsAMD, Flags); impl PipelineCompilerControlFlagsAMD {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkToolPurposeFlagBitsEXT.html>"] pub struct ToolPurposeFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(ToolPurposeFlagsEXT, 0b1_1111, Flags);+vk_bitflags_wrapped!(ToolPurposeFlagsEXT, Flags); impl ToolPurposeFlagsEXT {     pub const VALIDATION: Self = Self(0b1);     pub const PROFILING: Self = Self(0b10);@@ -972,11 +966,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkAccessFlagBits2KHR.html>"] pub struct AccessFlags2KHR(pub(crate) Flags64);-vk_bitflags_wrapped!(-    AccessFlags2KHR,-    0b111_0000_0000_0000_0001_1111_1111_1111_1111,-    Flags64-);+vk_bitflags_wrapped!(AccessFlags2KHR, Flags64); impl AccessFlags2KHR {     pub const NONE: Self = Self(0);     pub const INDIRECT_COMMAND_READ: Self = Self(0b1);@@ -1004,11 +994,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineStageFlagBits2KHR.html>"] pub struct PipelineStageFlags2KHR(pub(crate) Flags64);-vk_bitflags_wrapped!(-    PipelineStageFlags2KHR,-    0b111_1111_0000_0000_0000_0001_1111_1111_1111_1111,-    Flags64-);+vk_bitflags_wrapped!(PipelineStageFlags2KHR, Flags64); impl PipelineStageFlags2KHR {     pub const NONE: Self = Self(0);     pub const TOP_OF_PIPE: Self = Self(0b1);@@ -1043,7 +1029,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSubmitFlagBitsKHR.html>"] pub struct SubmitFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(SubmitFlagsKHR, 0b1, Flags);+vk_bitflags_wrapped!(SubmitFlagsKHR, Flags); impl SubmitFlagsKHR {     pub const PROTECTED: Self = Self(0b1); }@@ -1051,19 +1037,31 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkEventCreateFlagBits.html>"] pub struct EventCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(EventCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(EventCreateFlags, Flags); impl EventCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineLayoutCreateFlagBits.html>"] pub struct PipelineLayoutCreateFlags(pub(crate) Flags);-vk_bitflags_wrapped!(PipelineLayoutCreateFlags, 0b0, Flags);+vk_bitflags_wrapped!(PipelineLayoutCreateFlags, Flags); impl PipelineLayoutCreateFlags {}+#[repr(transparent)]+#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]+#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineColorBlendStateCreateFlagBits.html>"]+pub struct PipelineColorBlendStateCreateFlags(pub(crate) Flags);+vk_bitflags_wrapped!(PipelineColorBlendStateCreateFlags, Flags);+impl PipelineColorBlendStateCreateFlags {}+#[repr(transparent)]+#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]+#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineDepthStencilStateCreateFlagBits.html>"]+pub struct PipelineDepthStencilStateCreateFlags(pub(crate) Flags);+vk_bitflags_wrapped!(PipelineDepthStencilStateCreateFlags, Flags);+impl PipelineDepthStencilStateCreateFlags {} #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoCodecOperationFlagBitsKHR.html>"] pub struct VideoCodecOperationFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoCodecOperationFlagsKHR, 0b0, Flags);+vk_bitflags_wrapped!(VideoCodecOperationFlagsKHR, Flags); impl VideoCodecOperationFlagsKHR {     pub const INVALID: Self = Self(0); }@@ -1071,7 +1069,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoChromaSubsamplingFlagBitsKHR.html>"] pub struct VideoChromaSubsamplingFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoChromaSubsamplingFlagsKHR, 0b1111, Flags);+vk_bitflags_wrapped!(VideoChromaSubsamplingFlagsKHR, Flags); impl VideoChromaSubsamplingFlagsKHR {     pub const INVALID: Self = Self(0);     pub const MONOCHROME: Self = Self(0b1);@@ -1083,7 +1081,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoComponentBitDepthFlagBitsKHR.html>"] pub struct VideoComponentBitDepthFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoComponentBitDepthFlagsKHR, 0b1_0101, Flags);+vk_bitflags_wrapped!(VideoComponentBitDepthFlagsKHR, Flags); impl VideoComponentBitDepthFlagsKHR {     pub const INVALID: Self = Self(0);     pub const TYPE_8: Self = Self(0b1);@@ -1094,7 +1092,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoCapabilityFlagBitsKHR.html>"] pub struct VideoCapabilityFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoCapabilityFlagsKHR, 0b11, Flags);+vk_bitflags_wrapped!(VideoCapabilityFlagsKHR, Flags); impl VideoCapabilityFlagsKHR {     pub const PROTECTED_CONTENT: Self = Self(0b1);     pub const SEPARATE_REFERENCE_IMAGES: Self = Self(0b10);@@ -1103,7 +1101,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoSessionCreateFlagBitsKHR.html>"] pub struct VideoSessionCreateFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoSessionCreateFlagsKHR, 0b1, Flags);+vk_bitflags_wrapped!(VideoSessionCreateFlagsKHR, Flags); impl VideoSessionCreateFlagsKHR {     pub const DEFAULT: Self = Self(0);     pub const PROTECTED_CONTENT: Self = Self(0b1);@@ -1112,7 +1110,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoCodingQualityPresetFlagBitsKHR.html>"] pub struct VideoCodingQualityPresetFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoCodingQualityPresetFlagsKHR, 0b111, Flags);+vk_bitflags_wrapped!(VideoCodingQualityPresetFlagsKHR, Flags); impl VideoCodingQualityPresetFlagsKHR {     pub const NORMAL: Self = Self(0b1);     pub const POWER: Self = Self(0b10);@@ -1122,7 +1120,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoDecodeH264PictureLayoutFlagBitsEXT.html>"] pub struct VideoDecodeH264PictureLayoutFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(VideoDecodeH264PictureLayoutFlagsEXT, 0b11, Flags);+vk_bitflags_wrapped!(VideoDecodeH264PictureLayoutFlagsEXT, Flags); impl VideoDecodeH264PictureLayoutFlagsEXT {     pub const PROGRESSIVE: Self = Self(0);     pub const INTERLACED_INTERLEAVED_LINES: Self = Self(0b1);@@ -1132,7 +1130,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoCodingControlFlagBitsKHR.html>"] pub struct VideoCodingControlFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoCodingControlFlagsKHR, 0b1, Flags);+vk_bitflags_wrapped!(VideoCodingControlFlagsKHR, Flags); impl VideoCodingControlFlagsKHR {     pub const DEFAULT: Self = Self(0);     pub const RESET: Self = Self(0b1);@@ -1141,7 +1139,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoDecodeFlagBitsKHR.html>"] pub struct VideoDecodeFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoDecodeFlagsKHR, 0b1, Flags);+vk_bitflags_wrapped!(VideoDecodeFlagsKHR, Flags); impl VideoDecodeFlagsKHR {     pub const DEFAULT: Self = Self(0);     pub const RESERVED_0: Self = Self(0b1);@@ -1150,7 +1148,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeFlagBitsKHR.html>"] pub struct VideoEncodeFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoEncodeFlagsKHR, 0b1, Flags);+vk_bitflags_wrapped!(VideoEncodeFlagsKHR, Flags); impl VideoEncodeFlagsKHR {     pub const DEFAULT: Self = Self(0);     pub const RESERVED_0: Self = Self(0b1);@@ -1159,16 +1157,16 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeRateControlFlagBitsKHR.html>"] pub struct VideoEncodeRateControlFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoEncodeRateControlFlagsKHR, 0b1, Flags);+vk_bitflags_wrapped!(VideoEncodeRateControlFlagsKHR, Flags); impl VideoEncodeRateControlFlagsKHR {     pub const DEFAULT: Self = Self(0);-    pub const RESET: Self = Self(0b1);+    pub const RESERVED_0: Self = Self(0b1); } #[repr(transparent)] #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeRateControlModeFlagBitsKHR.html>"] pub struct VideoEncodeRateControlModeFlagsKHR(pub(crate) Flags);-vk_bitflags_wrapped!(VideoEncodeRateControlModeFlagsKHR, 0b11, Flags);+vk_bitflags_wrapped!(VideoEncodeRateControlModeFlagsKHR, Flags); impl VideoEncodeRateControlModeFlagsKHR {     pub const NONE: Self = Self(0);     pub const CBR: Self = Self(1);@@ -1178,7 +1176,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeH264CapabilityFlagBitsEXT.html>"] pub struct VideoEncodeH264CapabilityFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(VideoEncodeH264CapabilityFlagsEXT, 0b111_1111_1111, Flags);+vk_bitflags_wrapped!(VideoEncodeH264CapabilityFlagsEXT, Flags); impl VideoEncodeH264CapabilityFlagsEXT {     pub const CABAC: Self = Self(0b1);     pub const CAVLC: Self = Self(0b10);@@ -1196,7 +1194,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeH264InputModeFlagBitsEXT.html>"] pub struct VideoEncodeH264InputModeFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(VideoEncodeH264InputModeFlagsEXT, 0b111, Flags);+vk_bitflags_wrapped!(VideoEncodeH264InputModeFlagsEXT, Flags); impl VideoEncodeH264InputModeFlagsEXT {     pub const FRAME: Self = Self(0b1);     pub const SLICE: Self = Self(0b10);@@ -1206,7 +1204,7 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeH264OutputModeFlagBitsEXT.html>"] pub struct VideoEncodeH264OutputModeFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(VideoEncodeH264OutputModeFlagsEXT, 0b111, Flags);+vk_bitflags_wrapped!(VideoEncodeH264OutputModeFlagsEXT, Flags); impl VideoEncodeH264OutputModeFlagsEXT {     pub const FRAME: Self = Self(0b1);     pub const SLICE: Self = Self(0b10);@@ -1216,8 +1214,126 @@ #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] #[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeH264CreateFlagBitsEXT.html>"] pub struct VideoEncodeH264CreateFlagsEXT(pub(crate) Flags);-vk_bitflags_wrapped!(VideoEncodeH264CreateFlagsEXT, 0b1, Flags);+vk_bitflags_wrapped!(VideoEncodeH264CreateFlagsEXT, Flags); impl VideoEncodeH264CreateFlagsEXT {     pub const DEFAULT: Self = Self(0);     pub const RESERVED_0: Self = Self(0b1); }+#[repr(transparent)]+#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]+#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeH264RateControlStructureFlagBitsEXT.html>"]+pub struct VideoEncodeH264RateControlStructureFlagsEXT(pub(crate) Flags);+vk_bitflags_wrapped!(VideoEncodeH264RateControlStructureFlagsEXT, Flags);+impl VideoEncodeH264RateControlStructureFlagsEXT {+    pub const UNKNOWN: Self = Self(0);+    pub const FLAT: Self = Self(0b1);+    pub const DYADIC: Self = Self(0b10);+}+#[repr(transparent)]+#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]+#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkImageFormatConstraintsFlagBitsFUCHSIA.html>"]+pub struct ImageFormatConstraintsFlagsFUCHSIA(pub(crate) Flags);+vk_bitflags_wrapped!(ImageFormatConstraintsFlagsFUCHSIA, Flags);+impl ImageFormatConstraintsFlagsFUCHSIA {}+#[repr(transparent)]+#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]+#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkImageConstraintsInfoFlagBitsFUCHSIA.html>"]+pub struct ImageConstraintsInfoFlagsFUCHSIA(pub(crate) Flags);+vk_bitflags_wrapped!(ImageConstraintsInfoFlagsFUCHSIA, Flags);+impl ImageConstraintsInfoFlagsFUCHSIA {+    pub const CPU_READ_RARELY: Self = Self(0b1);+    pub const CPU_READ_OFTEN: Self = Self(0b10);+    pub const CPU_WRITE_RARELY: Self = Self(0b100);+    pub const CPU_WRITE_OFTEN: Self = Self(0b1000);+    pub const PROTECTED_OPTIONAL: Self = Self(0b1_0000);+}+#[repr(transparent)]+#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]+#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkFormatFeatureFlagBits2KHR.html>"]+pub struct FormatFeatureFlags2KHR(pub(crate) Flags64);+vk_bitflags_wrapped!(FormatFeatureFlags2KHR, Flags64);+impl FormatFeatureFlags2KHR {+    pub const SAMPLED_IMAGE: Self = Self(0b1);+    pub const STORAGE_IMAGE: Self = Self(0b10);+    pub const STORAGE_IMAGE_ATOMIC: Self = Self(0b100);+    pub const UNIFORM_TEXEL_BUFFER: Self = Self(0b1000);+    pub const STORAGE_TEXEL_BUFFER: Self = Self(0b1_0000);+    pub const STORAGE_TEXEL_BUFFER_ATOMIC: Self = Self(0b10_0000);+    pub const VERTEX_BUFFER: Self = Self(0b100_0000);+    pub const COLOR_ATTACHMENT: Self = Self(0b1000_0000);+    pub const COLOR_ATTACHMENT_BLEND: Self = Self(0b1_0000_0000);+    pub const DEPTH_STENCIL_ATTACHMENT: Self = Self(0b10_0000_0000);+    pub const BLIT_SRC: Self = Self(0b100_0000_0000);+    pub const BLIT_DST: Self = Self(0b1000_0000_0000);+    pub const SAMPLED_IMAGE_FILTER_LINEAR: Self = Self(0b1_0000_0000_0000);+    pub const SAMPLED_IMAGE_FILTER_CUBIC_EXT: Self = Self(0b10_0000_0000_0000);+    pub const TRANSFER_SRC: Self = Self(0b100_0000_0000_0000);+    pub const TRANSFER_DST: Self = Self(0b1000_0000_0000_0000);+    pub const SAMPLED_IMAGE_FILTER_MINMAX: Self = Self(0b1_0000_0000_0000_0000);+    pub const MIDPOINT_CHROMA_SAMPLES: Self = Self(0b10_0000_0000_0000_0000);+    pub const SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER: Self = Self(0b100_0000_0000_0000_0000);+    pub const SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER: Self =+        Self(0b1000_0000_0000_0000_0000);+    pub const SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT: Self =+        Self(0b1_0000_0000_0000_0000_0000);+    pub const SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE: Self =+        Self(0b10_0000_0000_0000_0000_0000);+    pub const DISJOINT: Self = Self(0b100_0000_0000_0000_0000_0000);+    pub const COSITED_CHROMA_SAMPLES: Self = Self(0b1000_0000_0000_0000_0000_0000);+    pub const STORAGE_READ_WITHOUT_FORMAT: Self = Self(0b1000_0000_0000_0000_0000_0000_0000_0000);+    pub const STORAGE_WRITE_WITHOUT_FORMAT: Self =+        Self(0b1_0000_0000_0000_0000_0000_0000_0000_0000);+    pub const SAMPLED_IMAGE_DEPTH_COMPARISON: Self =+        Self(0b10_0000_0000_0000_0000_0000_0000_0000_0000);+}+#[repr(transparent)]+#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]+#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkVideoEncodeH265InputModeFlagBitsEXT.html>"]+pub struct VideoEncodeH265InputModeFlagsEXT(pub(crate) Flags);+vk_bitflags_wrapped!(VideoEncodeH265InputModeFlagsEXT, Flags);+impl VideoEncodeH265InputModeFlagsEXT {
AI Analysis
After analyzing the provided code diff, I don't see any clear security vulnerabilities being fixed. The changes appear to be primarily removing default bitmask values from various Vulkan flag type definitions. Here's the analysis:

1. Vulnerability Existed: no
   Not a security fix [File] third_party/rust/ash/src/vk/bitflags.rs [Lines] Throughout file
   [Old Code] vk_bitflags_wrapped!(TypeName, default_bitmask, Flags);
   [Fixed Code] vk_bitflags_wrapped!(TypeName, Flags);

The changes remove hardcoded default bitmask values from Vulkan flag type definitions. This appears to be a code cleanup/refactoring rather than a security fix. The modification makes the code more maintainable and consistent but doesn't address any specific security issues.

The diff shows a pattern where default bitmask values are being removed from flag type definitions across the entire file, affecting many different Vulkan-related flags. This is likely part of a larger refactoring effort to make the flag handling more consistent with Vulkan specifications.

No specific vulnerability names are associated with these changes, and there's no indication of security fixes being made. The changes are purely structural/architectural in nature.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
third_party/rust/neqo-http3/tests/webtransport/negotiation.rs AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/third_party/rust/neqo-http3/tests/webtransport/negotiation.rs+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/third_party/rust/neqo-http3/tests/webtransport/negotiation.rs@@ -5,8 +5,13 @@ // except according to those terms. use super::{connect, default_http3_client, default_http3_server, exchange_packets};-use neqo_common::event::Provider;-use neqo_http3::{Http3Client, Http3ClientEvent, Http3State, WebTransportEvent};+use neqo_common::{event::Provider, Encoder};+use neqo_crypto::AuthenticationStatus;+use neqo_http3::{+    settings::{HSetting, HSettingType, HSettings},+    Error, HFrame, Http3Client, Http3ClientEvent, Http3State, WebTransportEvent,+};+use neqo_transport::{Connection, ConnectionError, StreamType}; use std::time::Duration; use test_fixture::*;@@ -103,3 +108,49 @@     zero_rtt(false, true, true, false);     zero_rtt(false, true, true, true); }++fn exchange_packets2(client: &mut Http3Client, server: &mut Connection) {+    let mut out = None;+    loop {+        out = client.process(out, now()).dgram();+        out = server.process(out, now()).dgram();+        if out.is_none() {+            break;+        }+    }+}++#[test]+fn wrong_setting_value() {+    const CONTROL_STREAM_TYPE: &[u8] = &[0x0];+    let mut client = default_http3_client(false);+    let mut server = default_server_h3();++    exchange_packets2(&mut client, &mut server);+    client.authenticated(AuthenticationStatus::Ok, now());+    exchange_packets2(&mut client, &mut server);++    let control = server.stream_create(StreamType::UniDi).unwrap();+    server.stream_send(control, CONTROL_STREAM_TYPE).unwrap();+    // Encode a settings frame and send it.+    let mut enc = Encoder::default();+    let settings = HFrame::Settings {+        settings: HSettings::new(&[HSetting::new(HSettingType::EnableWebTransport, 2)]),+    };+    settings.encode(&mut enc);+    assert_eq!(+        server.stream_send(control, &enc[..]).unwrap(),+        enc[..].len()+    );++    exchange_packets2(&mut client, &mut server);+    match client.state() {+        Http3State::Closing(err) | Http3State::Closed(err) => {+            assert_eq!(+                err,+                ConnectionError::Application(Error::HttpSettings.code())+            );+        }+        _ => panic!("Wrong state {:?}", client.state()),+    };+}
AI Analysis
I'll analyze the code diff according to the provided format. The diff shows changes in a WebTransport negotiation test file, primarily adding a new test case for handling incorrect settings.

Vulnerability Existed: not sure
Potential Protocol Compliance Issue [third_party/rust/neqo-http3/tests/webtransport/negotiation.rs] [Lines 103-108, 108-149]
[Old Code]
    zero_rtt(false, true, true, false);
    zero_rtt(false, true, true, true);
}

[Fixed Code]
    zero_rtt(false, true, true, false);
    zero_rtt(false, true, true, true);
}

fn exchange_packets2(client: &mut Http3Client, server: &mut Connection) {
    let mut out = None;
    loop {
        out = client.process(out, now()).dgram();
        out = server.process(out, now()).dgram();
        if out.is_none() {
            break;
        }
    }
}

#[test]
fn wrong_setting_value() {
    const CONTROL_STREAM_TYPE: &[u8] = &[0x0];
    let mut client = default_http3_client(false);
    let mut server = default_server_h3();

    exchange_packets2(&mut client, &mut server);
    client.authenticated(AuthenticationStatus::Ok, now());
    exchange_packets2(&mut client, &mut server);

    let control = server.stream_create(StreamType::UniDi).unwrap();
    server.stream_send(control, CONTROL_STREAM_TYPE).unwrap();
    // Encode a settings frame and send it.
    let mut enc = Encoder::default();
    let settings = HFrame::Settings {
        settings: HSettings::new(&[HSetting::new(HSettingType::EnableWebTransport, 2)]),
    };
    settings.encode(&mut enc);
    assert_eq!(
        server.stream_send(control, &enc[..]).unwrap(),
        enc[..].len()
    );

    exchange_packets2(&mut client, &mut server);
    match client.state() {
        Http3State::Closing(err) | Http3State::Closed(err) => {
            assert_eq!(
                err,
                ConnectionError::Application(Error::HttpSettings.code())
            );
        }
        _ => panic!("Wrong state {:?}", client.state()),
    };
}

Additional Details:
1. The added test case `wrong_setting_value()` appears to test handling of invalid WebTransport settings (value 2 when it should be 0 or 1)
2. This might indicate a previous lack of validation for WebTransport settings values
3. However, since this is a test file, it's not clear if this was an actual vulnerability in the production code or just adding test coverage
4. The test verifies that invalid settings cause the connection to close with an HTTP_SETTINGS error

The changes suggest improved validation for WebTransport protocol settings, but since this is test code, I can't be certain if this corresponds to an actual vulnerability that was fixed in the production code.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
testing/web-platform/tests/html/canvas/offscreen/the-offscreen-canvas/size.attributes.parse.junk.worker.js AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/testing/web-platform/tests/html/canvas/offscreen/the-offscreen-canvas/size.attributes.parse.junk.worker.js+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/testing/web-platform/tests/html/canvas/offscreen/the-offscreen-canvas/size.attributes.parse.junk.worker.js@@ -13,10 +13,10 @@ }); t.step(function() {-var offscreenCanvas = new OffscreenCanvas(100, 50);-var ctx = offscreenCanvas.getContext('2d');+var canvas = new OffscreenCanvas(100, 50);+var ctx = canvas.getContext('2d');-assert_throws_js(TypeError, function() { offscreenCanvas.width = '#!?'; });+assert_throws_js(TypeError, function() { canvas.width = '#!?'; }); t.done(); });
AI Analysis
Based on the provided diff, here's the analysis:

1. Vulnerability Existed: no
    No specific vulnerability found [File] testing/web-platform/tests/html/canvas/offscreen/the-offscreen-canvas/size.attributes.parse.junk.worker.js [Lines] 13-17
    [Old Code]
    var offscreenCanvas = new OffscreenCanvas(100, 50);
    var ctx = offscreenCanvas.getContext('2d');
    assert_throws_js(TypeError, function() { offscreenCanvas.width = '#!?'; });
    
    [Fixed Code]
    var canvas = new OffscreenCanvas(100, 50);
    var ctx = canvas.getContext('2d');
    assert_throws_js(TypeError, function() { canvas.width = '#!?'; });

The changes appear to be purely cosmetic/refactoring - renaming a variable from `offscreenCanvas` to `canvas`. The test's purpose remains the same: to verify that setting an invalid width value throws a TypeError. There's no indication of any security vulnerability being fixed in this change.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
toolkit/components/places/nsNavHistoryResult.cpp AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/toolkit/components/places/nsNavHistoryResult.cpp+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/toolkit/components/places/nsNavHistoryResult.cpp@@ -2514,6 +2514,22 @@   NS_ENSURE_SUCCESS(rv, rv);   rv = NotifyIfTagsChanged(uri);   NS_ENSURE_SUCCESS(rv, rv);+  return NS_OK;+}++nsresult nsNavHistoryQueryResultNode::OnItemTimeChanged(int64_t aItemId,+                                                        const nsACString& aGUID,+                                                        PRTime aDateAdded,+                                                        PRTime aLastModified) {+  // Update ourselves first.+  nsresult rv = nsNavHistoryResultNode::OnItemTimeChanged(+      aItemId, aGUID, aDateAdded, aLastModified);+  NS_ENSURE_SUCCESS(rv, rv);++  if (mLiveUpdate == QUERYUPDATE_COMPLEX_WITH_BOOKMARKS) {+    return Refresh();+  }+   return NS_OK; }
AI Analysis
I'll analyze the provided code diff following the specified format.

Vulnerability Existed: not sure  
[Potential Missing Input Validation] [toolkit/components/places/nsNavHistoryResult.cpp] [Lines 2514-2528]  
[Old Code]  
```  
(No previous implementation of OnItemTimeChanged existed)  
```  
[Fixed Code]  
```  
nsresult nsNavHistoryQueryResultNode::OnItemTimeChanged(int64_t aItemId,  
                                                        const nsACString& aGUID,  
                                                        PRTime aDateAdded,  
                                                        PRTime aLastModified) {  
  // Update ourselves first.  
  nsresult rv = nsNavHistoryResultNode::OnItemTimeChanged(  
      aItemId, aGUID, aDateAdded, aLastModified);  
  NS_ENSURE_SUCCESS(rv, rv);  

  if (mLiveUpdate == QUERYUPDATE_COMPLEX_WITH_BOOKMARKS) {  
    return Refresh();  
  }  

  return NS_OK;  
}  
```  

Additional Details:  
1. This appears to be a new method added rather than a fix to existing code  
2. While not clearly a security fix, the addition of input validation would be good practice  
3. The method handles time-related updates which could potentially be security-sensitive  
4. No obvious vulnerability is being fixed, but the change could be related to preventing timing-related issues  

Note: Since this is new functionality rather than a modification of existing code, it's harder to identify specific vulnerabilities being fixed. The change appears to be adding proper handling for time updates in the history system.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
testing/web-platform/tests/html/canvas/offscreen/shadows/2d.shadow.attributes.shadowOffset.valid.html AI: No vulnerabilities
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/testing/web-platform/tests/html/canvas/offscreen/shadows/2d.shadow.attributes.shadowOffset.valid.html+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/testing/web-platform/tests/html/canvas/offscreen/shadows/2d.shadow.attributes.shadowOffset.valid.html@@ -17,8 +17,8 @@ }); t.step(function() {-var offscreenCanvas = new OffscreenCanvas(100, 50);-var ctx = offscreenCanvas.getContext('2d');+var canvas = new OffscreenCanvas(100, 50);+var ctx = canvas.getContext('2d'); ctx.shadowOffsetX = 1; ctx.shadowOffsetY = 2;
AI Analysis
Analysis of the provided code diff:

1. Vulnerability Existed: no
   No specific vulnerability found [File] [Lines 17-18]
   [Old Code]
   var offscreenCanvas = new OffscreenCanvas(100, 50);
   var ctx = offscreenCanvas.getContext('2d');
   [Fixed Code]
   var canvas = new OffscreenCanvas(100, 50);
   var ctx = canvas.getContext('2d');

Additional details:
- The change appears to be a simple variable renaming from `offscreenCanvas` to `canvas`
- No security implications are evident in this change
- The modification seems to be for code consistency or readability rather than security fixes
- No known vulnerability patterns are present in either the old or new code

This appears to be a purely cosmetic change with no security impact. The functionality remains identical, only the variable name has been updated.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
devtools/client/debugger/src/workers/parser/utils/ast.js AI: Not sure
--- /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_97_END/firefox-FIREFOX_RELEASE_97_END/devtools/client/debugger/src/workers/parser/utils/ast.js+++ /root/PatchLeaks-main/products/firefox_downloads/FIREFOX_RELEASE_98_END/firefox-FIREFOX_RELEASE_98_END/devtools/client/debugger/src/workers/parser/utils/ast.js@@ -5,7 +5,6 @@ import parseScriptTags from "parse-script-tags"; import * as babelParser from "@babel/parser"; import * as t from "@babel/types";-import isEmpty from "lodash/isEmpty"; import { getSource } from "../sources"; let ASTs = new Map();@@ -187,7 +186,7 @@ export function traverseAst(sourceId, visitor, state) {   const ast = getAst(sourceId);-  if (isEmpty(ast)) {+  if (!ast || Object.keys(ast).length == 0) {     return null;   }
AI Analysis
Here's the analysis of the provided code diff:

1. Vulnerability Existed: not sure  
   [Potential Removal of Unused Dependency] [devtools/client/debugger/src/workers/parser/utils/ast.js] [Lines 5, 187]  
   [Old Code]  
   ```
   import isEmpty from "lodash/isEmpty";
   ...
   if (isEmpty(ast)) {
   ```  
   [Fixed Code]  
   ```
   (import removed)
   ...
   if (!ast || Object.keys(ast).length == 0) {
   ```  
   Additional Details: The change removes the lodash/isEmpty dependency and replaces it with native JavaScript checks. While this isn't a direct security fix, it could be related to reducing attack surface by removing unused dependencies.

2. Vulnerability Existed: not sure  
   [Potential Null/Empty Check Improvement] [devtools/client/debugger/src/workers/parser/utils/ast.js] [Lines 187]  
   [Old Code]  
   ```
   if (isEmpty(ast)) {
   ```  
   [Fixed Code]  
   ```
   if (!ast || Object.keys(ast).length == 0) {
   ```  
   Additional Details: The new check is more explicit about handling both null/undefined cases and empty objects, which could prevent potential edge cases in AST traversal. However, it's unclear if this was fixing a specific security vulnerability.

Note: While these changes appear to be improvements in code quality and robustness, I couldn't identify any specific, well-known security vulnerabilities being addressed. The changes might be part of general code maintenance or could be preventing potential edge cases that might lead to security issues.
CVE Analysis Results:
CVE-2022-26384: No
View CVE Description
If an attacker could control the contents of an iframe sandboxed with <code>allow-popups</code> but not <code>allow-scripts</code>, they were able to craft a link that, when clicked, would lead to JavaScript execution in violation of the sandbox. This vulnerability affects Firefox < 98, Firefox ESR < 91.7, and Thunderbird < 91.7.
Showing 1061-1080 of 6017 files
Per page: