@@ -635,6 +635,8 @@ static GSourceFuncs _handlerIntervention =
635
635
, Testing(false )
636
636
, ServiceWorkerEnabled(false )
637
637
, ICECandidateFilteringEnabled()
638
+ , GstQuirks()
639
+ , GstHolePunchQuirk()
638
640
{
639
641
Add (_T (" useragent" ), &UserAgent);
640
642
Add (_T (" url" ), &URL);
@@ -704,6 +706,8 @@ static GSourceFuncs _handlerIntervention =
704
706
Add (_T (" testing" ), &Testing);
705
707
Add (_T (" serviceworker" ), &ServiceWorkerEnabled);
706
708
Add (_T (" icecandidatefiltering" ), &ICECandidateFilteringEnabled);
709
+ Add (_T (" gstquirks" ), &GstQuirks);
710
+ Add (_T (" gstholepunchquirk" ), &GstHolePunchQuirk);
707
711
}
708
712
~Config ()
709
713
{
@@ -778,6 +782,8 @@ static GSourceFuncs _handlerIntervention =
778
782
Core::JSON::Boolean Testing;
779
783
Core::JSON::Boolean ServiceWorkerEnabled;
780
784
Core::JSON::Boolean ICECandidateFilteringEnabled;
785
+ Core::JSON::String GstQuirks;
786
+ Core::JSON::String GstHolePunchQuirk;
781
787
};
782
788
783
789
class HangDetector
@@ -2439,6 +2445,14 @@ static GSourceFuncs _handlerIntervention =
2439
2445
Core::SystemInfo::SetEnvironment (_T (" GST_VIRTUAL_DISP_HEIGHT" ), height, !environmentOverride);
2440
2446
}
2441
2447
2448
+ if (_config.GstQuirks .IsSet () == true ) {
2449
+ Core::SystemInfo::SetEnvironment (_T (" WEBKIT_GST_QUIRKS" ), _config.GstQuirks .Value (), !environmentOverride);
2450
+ }
2451
+
2452
+ if (_config.GstHolePunchQuirk .IsSet () == true ) {
2453
+ Core::SystemInfo::SetEnvironment (_T (" WEBKIT_GST_HOLE_PUNCH_QUIRK" ), _config.GstHolePunchQuirk .Value (), !environmentOverride);
2454
+ }
2455
+
2442
2456
for (auto environmentVariableIndex = 0 ; environmentVariableIndex < _config.EnvironmentVariables .Length (); environmentVariableIndex++) {
2443
2457
const auto & environmentVariable = _config.EnvironmentVariables [environmentVariableIndex];
2444
2458
Core::SystemInfo::SetEnvironment (environmentVariable.Name .Value (), environmentVariable.Value .Value ());
0 commit comments