1 # HG changeset patch |
|
2 # Parent fbca0d2a522cd1ab78001476293d3d79bfabb4cf |
|
3 |
|
4 <!DOCTYPE html> |
|
5 <html lang='en'> |
|
6 <head> |
|
7 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> |
|
8 <title>Tree - rpms/firefox - src.fedoraproject.org</title> |
|
9 <link rel="shortcut icon" type="image/vnd.microsoft.icon" |
|
10 href="/theme/static/favicon.ico?version=5.13.2"/> |
|
11 <link href="/theme/static/fedora-bootstrap-1.3.0/fedora-bootstrap.min.css?version=5.13.2" |
|
12 type="text/css" rel="stylesheet" /> |
|
13 <link href="/theme/static/fonts/fonts.css?version=5.13.2" |
|
14 rel="stylesheet" type="text/css" /> |
|
15 <link href="/theme/static/fonts/hack_fonts/css/hack-extended.min.css?version=5.13.2" |
|
16 type="text/css" rel="stylesheet" /> |
|
17 <link href="/theme/static/theme.css?version=5.13.2" |
|
18 type="text/css" rel="stylesheet" /> |
|
19 |
|
20 <link type="text/css" rel="stylesheet" nonce="5VHCMUQ81dmw6zbPtdKqrXAJZ" href="/static/vendor/font-awesome/font-awesome.css?version=5.13.2"/> |
|
21 <link type="text/css" rel="stylesheet" nonce="5VHCMUQ81dmw6zbPtdKqrXAJZ" href="/static/pagure.css?version=5.13.2"/> |
|
22 <link nonce="5VHCMUQ81dmw6zbPtdKqrXAJZ" rel="stylesheet" href="/static/vendor/highlight.js/styles/github.css?version=5.13.2"/> |
|
23 <link nonce="5VHCMUQ81dmw6zbPtdKqrXAJZ" rel="stylesheet" href="/static/vendor/highlightjs-line-numbers/highlightjs-line-numbers.min.css?version=5.13.2"/> |
|
24 <style nonce="5VHCMUQ81dmw6zbPtdKqrXAJZ"> |
|
25 .hljs { |
|
26 background: #fff; |
|
27 } |
|
28 </style> |
|
29 </head> |
|
30 <body id="home"> |
|
31 |
|
32 <!-- start masthead --> |
|
33 <nav class="navbar navbar-light masthead p-0 navbar-expand"> |
|
34 <div class="container"> |
|
35 <a href="/" class="navbar-brand"> |
|
36 <img height=40px src="/theme/static/pagure-logo.png?version=5.13.2" |
|
37 alt="pagure Logo" id="pagureLogo"/> |
|
38 </a> |
|
39 <ul class="navbar-nav ml-auto"> |
|
40 |
|
41 |
|
42 |
|
43 <li class="nav-item"> |
|
44 <a class="btn btn-primary" href="/login/?next=https://src.fedoraproject.org/rpms/firefox/blob/fc69159c16b8035abdc07e69134357970f6b516f/f/mozilla-1725828.patch">Log In</a> |
|
45 </li> |
|
46 </ul> |
|
47 </div> |
|
48 </nav> |
|
49 <!-- close masthead--> |
|
50 |
|
51 <div class="bodycontent"> |
|
52 |
|
53 |
|
54 <div class="bg-light border border-bottom pt-3"> |
|
55 <div class="container"> |
|
56 <div class="row mb-3"> |
|
57 <div class="col-6"> |
|
58 <div class="row"> |
|
59 <div class="col-auto pr-0"> |
|
60 <h3> |
|
61 <i class="fa fa-archive text-muted"></i></h3> |
|
62 </div> |
|
63 <div class="col-auto pl-2"> |
|
64 <h3 class="mb-0"> |
|
65 <a href="/projects/rpms/%2A">rpms</a> / <a href="/rpms/firefox"><strong>firefox</strong></a> |
|
66 </h3> |
|
67 </div> |
|
68 </div> |
|
69 </div> |
|
70 <div class="col-6 text-right"> |
|
71 <div class="btn-group"> |
|
72 <div class="btn-group"> |
|
73 <a href="#" |
|
74 class="btn btn-sm dropdown-toggle btn-outline-primary" |
|
75 data-toggle="dropdown" id="watch-button"> |
|
76 <i class="fa fa-clone fa-fw"></i> |
|
77 <span>Clone</span> |
|
78 </a> |
|
79 <div class="dropdown-menu dropdown-menu-right"> |
|
80 <div class="m-3" id="source-dropdown" class="pointer"> |
|
81 <div> |
|
82 <h5><strong>Source Code</strong></h5> |
|
83 |
|
84 <div class="form-group"> |
|
85 <div class="input-group input-group-sm"> |
|
86 <div class="input-group-prepend"><span class="input-group-text">GIT</span></div> |
|
87 <input class="form-control bg-white select-on-focus" type="text" value="https://src.fedoraproject.org/rpms/firefox.git" readonly> |
|
88 </div> |
|
89 </div> |
|
90 </div> |
|
91 </div> |
|
92 </div> |
|
93 |
|
94 </div> |
|
95 </div> |
|
96 </div> |
|
97 </div> |
|
98 |
|
99 <ul class="nav nav-tabs nav-small border-bottom-0"> |
|
100 <li class="nav-item mr-2 text-dark"> |
|
101 <a class="nav-link active" href="/rpms/firefox"> |
|
102 <i class="fa fa-code fa-fw text-muted"></i> |
|
103 <span class="d-none d-md-inline">Source</span> |
|
104 </a> |
|
105 </li> |
|
106 |
|
107 <li class="nav-item mr-2 text-dark"> |
|
108 <a class="nav-link" href="https://bugzilla.redhat.com/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&classification=Fedora&product=Fedora&product=Fedora EPEL&component=firefox"> |
|
109 <i class="fa fa-fw text-muted fa-exclamation-circle"></i> |
|
110 <span class="d-none d-md-inline">Issues </span> |
|
111 <span class="fa fa-external-link"></span> |
|
112 </a> |
|
113 </li> |
|
114 |
|
115 <li class="nav-item mr-2 text-dark"> |
|
116 <a class="nav-link" href="/rpms/firefox/pull-requests"> |
|
117 <i class="fa fa-fw text-muted fa-arrow-circle-down"></i> |
|
118 <span class="d-none d-md-inline">Pull Requests </span> |
|
119 <span class="badge badge-secondary py-0 d-none d-md-inline"> |
|
120 0 |
|
121 </span> |
|
122 </a> |
|
123 </li> |
|
124 |
|
125 |
|
126 <li class="nav-item mr-2 text-dark"> |
|
127 <a class="nav-link" href="/rpms/firefox/stats"> |
|
128 <i class="fa fa-line-chart fa-fw text-muted"></i> |
|
129 <span class="d-none d-md-inline">Stats</span> |
|
130 </a> |
|
131 </li> |
|
132 |
|
133 |
|
134 </ul> |
|
135 </div> |
|
136 </div> |
|
137 |
|
138 <div class="container pt-5 repo-body-container"> |
|
139 <div class="row"> |
|
140 <div class="col-2"> |
|
141 <nav class="nav nav-tabs nav-sidetabs flex-column"> |
|
142 <a class= |
|
143 "nav-link nowrap |
|
144 " |
|
145 href="/rpms/firefox"> |
|
146 <i class="fa fa-home text-muted fa-fw"></i> <span class="d-none d-md-inline">Overview</span> |
|
147 </a> |
|
148 <a class= |
|
149 "nav-link nowrap |
|
150 active" |
|
151 href="/rpms/firefox/tree/fc69159c16b8035abdc07e69134357970f6b516f"> |
|
152 <i class="fa fa-file-code-o text-muted fa-fw"></i> Files |
|
153 </a> |
|
154 <a class= |
|
155 "nav-link nowrap |
|
156 " |
|
157 href="/rpms/firefox/commits/fc69159c16b8035abdc07e69134357970f6b516f"> |
|
158 <i class="fa fa-list-alt text-muted fa-fw" data-glyph="spreadsheet"></i> Commits |
|
159 </a> |
|
160 <a class= |
|
161 "nav-link nowrap |
|
162 " |
|
163 href="/rpms/firefox/branches?branchname=fc69159c16b8035abdc07e69134357970f6b516f"> |
|
164 <i class="fa fa-random text-muted fa-fw"></i> Branches |
|
165 </a> |
|
166 <a class= |
|
167 "nav-link nowrap |
|
168 " |
|
169 href="/rpms/firefox/forks"> |
|
170 <i class="fa fa-code-fork text-muted fa-fw"></i> Forks |
|
171 </a> |
|
172 <a class= |
|
173 "nav-link nowrap |
|
174 " |
|
175 href="/rpms/firefox/releases"> |
|
176 <i class="fa fa-tags text-muted fa-fw"></i> Releases |
|
177 </a> |
|
178 |
|
179 <div class="col-xs-2 line-height-1"></div> |
|
180 <h6>Monitoring status:</h6> |
|
181 <div class="btn-group"> |
|
182 <button title="Monitoring status" class="btn btn-sm btn-outline-primary disabled" |
|
183 id="monitoring-button"> |
|
184 <i id="monitoring-icon" class="fa fa-fw fa-eye"></i> |
|
185 <span id="monitoring-label" class="fa fa-circle-o-notch fa-spin fa-1x fa-fw"></span> |
|
186 </button> |
|
187 </div> |
|
188 |
|
189 <div class="col-xs-2 line-height-1"></div> |
|
190 <div id="orphan-section" class="pt-3"> |
|
191 <div class="col-xs-2 line-height-1"></div> |
|
192 |
|
193 </div> |
|
194 |
|
195 <div class="pt-3"> |
|
196 <div class="col-xs-2 line-height-1"> |
|
197 <h6>Bugzilla Assignee:</h6> |
|
198 <dl> |
|
199 <dt>Fedora: </dt> |
|
200 <dd id="fedora_assignee_txt"> |
|
201 gecko-maint |
|
202 </dd> |
|
203 <dt>EPEL: </dt> |
|
204 <dd id="epel_assignee_txt"> |
|
205 gecko-maint |
|
206 </dd> |
|
207 </dl> |
|
208 </div> |
|
209 </div> |
|
210 |
|
211 <div class="modal fade" id="modal_assignee" tabindex="-1" |
|
212 role="dialog" aria-labelledby="Bugzilla assignee" aria-hidden="true"> |
|
213 <div class="modal-dialog" role="document"> |
|
214 <div class="modal-content"> |
|
215 <div class="modal-header"> |
|
216 <h4 class="modal-title">Bugzilla Assignee</h4> |
|
217 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> |
|
218 <span aria-hidden="true">×</span> |
|
219 <span class="sr-only">Close</span> |
|
220 </button> |
|
221 </div> |
|
222 <form id="change_assignees"> |
|
223 <div class="modal-body"> |
|
224 <label for="fedora_assignee">Fedora</label> |
|
225 <input title="Default assignee for Fedora in bugzilla - Empty input resets to default" |
|
226 class="form-control" name="fedora_assignee" id="fedora_assignee" value="gecko-maint"/> |
|
227 <label for="epel_assignee">EPEL</label> |
|
228 <input title="Default assignee for EPEL in bugzilla (if applicable) - Empty input resets to default" |
|
229 class="form-control" name="epel_assignee" id="epel_assignee" value="gecko-maint" /> |
|
230 <p class="pt-2"> |
|
231 These two fields allow to specify a different default assignee for ticket opened against |
|
232 this package in bugzilla. Note: The EPEL field is |
|
233 always displayed for packages in the 'rpms' namespace regardless of whether it |
|
234 is used in bugzilla or not. </p> |
|
235 </div> |
|
236 <div class="modal-footer"> |
|
237 <button class="btn btn-secondary" type="button" title="Update bugzilla overrides" id="reset_assignees"> |
|
238 Reset to defaults |
|
239 </button> |
|
240 <button class="btn btn-primary" type="submit" title="Update bugzilla overrides" id="update_assignees"> |
|
241 Update |
|
242 </button> |
|
243 </div> |
|
244 </form> |
|
245 </div> |
|
246 </div> |
|
247 </div> |
|
248 |
|
249 <div class="modal fade" id="modal_orphan" tabindex="-1" |
|
250 role="dialog" aria-labelledby="Orphan this package" aria-hidden="true"> |
|
251 <div class="modal-dialog" role="document"> |
|
252 <div class="modal-content"> |
|
253 <div class="modal-header"> |
|
254 <h4 class="modal-title">Orphan package</h4> |
|
255 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> |
|
256 <span aria-hidden="true">×</span> |
|
257 <span class="sr-only">Close</span> |
|
258 </button> |
|
259 </div> |
|
260 <div class="modal-body"> |
|
261 <div class="form-group"> |
|
262 <label for="reason_menu">Reason</label> |
|
263 <select id="reason_menu" class="form-control"> |
|
264 |
|
265 <option id="lack_of_time_option_button">Lack of time</option> |
|
266 |
|
267 <option id="do_not_use_it_option_button">Do not use it anymore</option> |
|
268 |
|
269 <option id="unmaintained_option_button">Unmaintained upstream</option> |
|
270 |
|
271 <option id="fails_to_build_option_button">Fails to build from source</option> |
|
272 |
|
273 <option id="not_fixed_option_button">Important bug not fixed</option> |
|
274 |
|
275 <option id="other_option_button">Other</option> |
|
276 </select> |
|
277 </div> |
|
278 <label for="orphan_reason_info">Additional info</label> |
|
279 <input title="Additional info for orphaning reason" |
|
280 class="form-control" name="orphan_reason_info" id="orphan_reason_info" value=""/> |
|
281 </div> |
|
282 <div class="modal-footer"> |
|
283 <button class="btn btn-primary" type="submit" title="Orphan this package" id="orphan_button"> |
|
284 Update |
|
285 </button> |
|
286 </div> |
|
287 </div> |
|
288 </div> |
|
289 </div> |
|
290 |
|
291 <script type="text/javascript" nonce="5VHCMUQ81dmw6zbPtdKqrXAJZ"> |
|
292 window.addEventListener('load', function() { |
|
293 set_up_monitoring = function(status){ |
|
294 var _label = "Disabled" |
|
295 if (status === "monitoring") { |
|
296 _label = "Monitoring"; |
|
297 $("#monitoring-icon").attr("class", "fa fa-fw fa-eye") |
|
298 } else if (status === "monitoring-with-scratch") { |
|
299 _label = "Scratch builds" |
|
300 $("#monitoring-icon").attr("class", "fa fa-fw fa-eye") |
|
301 } else { |
|
302 $("#monitoring-icon").attr("class", "fa fa-fw fa-eye-slash") |
|
303 } |
|
304 |
|
305 $("#monitoring-label").text(_label); |
|
306 $("#monitoring-label").removeClass("fa fa-circle-o-notch fa-spin fa-1x fa-fw"); |
|
307 } |
|
308 |
|
309 $.ajax({ |
|
310 url: "/_dg/anitya/rpms/firefox", |
|
311 type: 'GET', |
|
312 dataType: 'json', |
|
313 success: function(res) { |
|
314 console.log(res); |
|
315 set_up_monitoring(res.monitoring) |
|
316 } |
|
317 }); |
|
318 |
|
319 |
|
320 $("#reset_assignees").on('click', function(){ |
|
321 $('#fedora_assignee').val(''); |
|
322 $('#epel_assignee').val(''); |
|
323 $("#change_assignees").submit(); |
|
324 return false; |
|
325 }); |
|
326 |
|
327 $("#change_assignees").on('submit', function(){ |
|
328 $('html').css('cursor', 'progress'); |
|
329 $('#reset_assignees').attr('disabled', true); |
|
330 $('#update_assignees').attr('disabled', true); |
|
331 $('#update_assignees').text('Updating...'); |
|
332 $.ajax({ |
|
333 url: "/_dg/bzoverrides/rpms/firefox", |
|
334 type: 'POST', |
|
335 dataType: 'json', |
|
336 data: { |
|
337 'epel_assignee': $('#epel_assignee').val(), |
|
338 'fedora_assignee': $('#fedora_assignee').val() |
|
339 }, |
|
340 success: function(res) { |
|
341 $("#fedora_assignee_txt").text(res.fedora_assignee); |
|
342 $("#epel_assignee_txt").text(res.epel_assignee); |
|
343 $('#modal_assignee').modal('hide'); |
|
344 $('#reset_assignees').attr('disabled', false); |
|
345 $('#update_assignees').attr('disabled', false); |
|
346 $('#update_assignees').text('Update'); |
|
347 $('html').css('cursor', 'default'); |
|
348 console.log("Successfully changed the bugzilla assignees"); |
|
349 return false; |
|
350 }, |
|
351 error: function(res) { |
|
352 var msg = ''; |
|
353 if(res.responseJSON.errors){ |
|
354 msg = ': ' + res.responseJSON.errors.join(', '); |
|
355 } |
|
356 alert("Unable to update the bugzilla assignee(s)" + msg); |
|
357 $('html').css('cursor', 'default'); |
|
358 $('#reset_assignees').attr('disabled', false); |
|
359 $('#update_assignees').attr('disabled', false); |
|
360 $('#update_assignees').text('Update'); |
|
361 return false; |
|
362 } |
|
363 }) |
|
364 return false; |
|
365 }); |
|
366 |
|
367 |
|
368 $.ajax({ |
|
369 url: "/_dg/actived/rpms/firefox", |
|
370 type: 'GET', |
|
371 dataType: 'json', |
|
372 success: function(res) { |
|
373 var _btn = $("#take_orphan_button"); |
|
374 if (!res.active){ |
|
375 _btn.off("click"); |
|
376 _btn.click(function(){ |
|
377 window.open( |
|
378 "https://pagure.io/releng/new_issue?title=" |
|
379 + "Unretire rpms/firefox" |
|
380 + "&template=package_unretiremet"); |
|
381 }); |
|
382 _btn.prop( "title", "Package retired - Open a releng ticket to adopt it" ); |
|
383 _btn.html("Retired"); |
|
384 } |
|
385 _btn.removeClass('disabled'); |
|
386 } |
|
387 }); |
|
388 |
|
389 $("#orphan_button").click(function(){ |
|
390 $("#orphan_button").attr("disabled", true); |
|
391 $.ajax({ |
|
392 url: "/_dg/orphan/rpms/firefox", |
|
393 type: 'POST', |
|
394 dataType: 'json', |
|
395 data: { |
|
396 'orphan_reason': $('#reason_menu').val(), |
|
397 'orphan_reason_info': $('#orphan_reason_info').val() |
|
398 }, |
|
399 success: function(res) { |
|
400 $("#point_of_contact_div").html("Package is currently unmaintained"); |
|
401 $("#orphan_button").attr("disabled", false); |
|
402 $('#modal_orphan').modal('hide'); |
|
403 $('#orphan-section').html(''); |
|
404 }, |
|
405 error: function(res) { |
|
406 if (res.responseJSON.errors) { |
|
407 alert('Unable to orphan the package: ' + res.responseJSON.errors); |
|
408 } else { |
|
409 alert('Unable to orphan the package: ' + res.responseJSON.error); |
|
410 } |
|
411 $("#orphan_button").attr("disabled", false); |
|
412 } |
|
413 }); |
|
414 }); |
|
415 }); |
|
416 </script> |
|
417 |
|
418 </nav> </div> |
|
419 <div class="col-10"> |
|
420 <div class="row mb-1"> |
|
421 <div class="col-sm-6"> |
|
422 <h3> |
|
423 Files |
|
424 </h3> |
|
425 </div> |
|
426 |
|
427 <div class="col-sm-6"> |
|
428 <div class="float-right"> |
|
429 <a href="#" class="btn btn-outline-light border-secondary text-dark btn-sm" |
|
430 aria-haspopup="true" aria-expanded="false"> |
|
431 Commit: <span class="font-weight-bold">fc69159c16b8035abdc07e69134357970f6b516f</span> |
|
432 </a> |
|
433 </div> |
|
434 </div> |
|
435 </div> |
|
436 <div class="card mb-3"> |
|
437 <div class="card-header"> |
|
438 <ol class="breadcrumb p-0 bg-transparent mb-0"> |
|
439 <li class="breadcrumb-item"> |
|
440 <a href="/rpms/firefox/tree/fc69159c16b8035abdc07e69134357970f6b516f"> |
|
441 <span class="fa fa-random"> |
|
442 </span> fc69159c16b8035abdc07e69134357970f6b516f |
|
443 </a> |
|
444 </li> |
|
445 <li class="active breadcrumb-item"> |
|
446 <span class="fa fa-file" data-glyph=""> |
|
447 </span> mozilla-1725828.patch |
|
448 </li> |
|
449 </ol> |
|
450 </div> |
|
451 |
|
452 <div class="card-body p-0"> |
|
453 <div class="bg-light border text-right pr-2"> |
|
454 <form class="btn btn-sm" method="POST" name="fork_project" |
|
455 action="/fork_edit/rpms/firefox/edit/fc69159c16b8035abdc07e69134357970f6b516f/f/mozilla-1725828.patch"> |
|
456 <button class="btn btn-sm btn-secondary fork_project_btn"> |
|
457 Fork and Edit |
|
458 </button> |
|
459 |
|
460 </form> |
|
461 |
|
462 <a class="btn btn-secondary btn-sm" href="/rpms/firefox/blob/fc69159c16b8035abdc07e69134357970f6b516f/f/mozilla-1725828.patch" title="View as blob">Blob</a> |
|
463 |
|
464 <a class="btn btn-secondary btn-sm" href="/rpms/firefox/blame/mozilla-1725828.patch?identifier=fc69159c16b8035abdc07e69134357970f6b516f" title="View git blame">Blame</a> |
|
465 |
|
466 <a class="btn btn-secondary btn-sm" href="/rpms/firefox/history/mozilla-1725828.patch?identifier=fc69159c16b8035abdc07e69134357970f6b516f" title="View git log for this file">History</a> |
|
467 |
|
468 <a class="btn btn-secondary btn-sm" href="/rpms/firefox/raw/fc69159c16b8035abdc07e69134357970f6b516f/f/mozilla-1725828.patch" title="View as raw">Raw</a> |
|
469 </div> |
|
470 |
|
471 <pre class="syntaxhighlightblock"><code class="lang-diff">diff -up firefox-92.0/dom/media/gmp/GMPChild.cpp.1725828 firefox-92.0/dom/media/gmp/GMPChild.cpp |
|
472 |
|
473 diff --git a/dom/media/gmp/GMPChild.cpp b/dom/media/gmp/GMPChild.cpp |
|
474 --- a/dom/media/gmp/GMPChild.cpp |
|
475 +++ b/dom/media/gmp/GMPChild.cpp |
|
476 @@ -227,18 +227,24 @@ mozilla::ipc::IPCResult GMPChild::RecvPr |
|
477 .EqualsASCII(lib.Data(), lib.Length())) { |
|
478 LoadLibraryW(char16ptr_t(whiteListedLib)); |
|
479 break; |
|
480 } |
|
481 } |
|
482 } |
|
483 #elif defined(XP_LINUX) |
|
484 constexpr static const char* whitelist[] = { |
|
485 + // NSS libraries used by clearkey. |
|
486 "libfreeblpriv3.so", |
|
487 "libsoftokn3.so", |
|
488 + // glibc libraries merged into libc.so.6; see bug 1725828 and |
|
489 + // the corresponding code in GMPParent.cpp. |
|
490 + "libdl.so.2", |
|
491 + "libpthread.so.0", |
|
492 + "librt.so.1", |
|
493 }; |
|
494 |
|
495 nsTArray<nsCString> libs; |
|
496 SplitAt(", ", aLibs, libs); |
|
497 for (const nsCString& lib : libs) { |
|
498 for (const char* whiteListedLib : whitelist) { |
|
499 if (lib.EqualsASCII(whiteListedLib)) { |
|
500 auto libHandle = dlopen(whiteListedLib, RTLD_NOW | RTLD_GLOBAL); |
|
501 @@ -251,17 +257,17 @@ mozilla::ipc::IPCResult GMPChild::RecvPr |
|
502 if (error) { |
|
503 // We should always have an error, but gracefully handle just in |
|
504 // case. |
|
505 nsAutoCString nsError{error}; |
|
506 CrashReporter::AppendAppNotesToCrashReport(nsError); |
|
507 } |
|
508 // End bug 1698718 logging. |
|
509 |
|
510 - MOZ_CRASH("Couldn't load lib needed by NSS"); |
|
511 + MOZ_CRASH("Couldn't load lib needed by media plugin"); |
|
512 } |
|
513 } |
|
514 } |
|
515 } |
|
516 #endif |
|
517 return IPC_OK(); |
|
518 } |
|
519 |
|
520 diff --git a/dom/media/gmp/GMPParent.cpp b/dom/media/gmp/GMPParent.cpp |
|
521 --- a/dom/media/gmp/GMPParent.cpp |
|
522 +++ b/dom/media/gmp/GMPParent.cpp |
|
523 @@ -871,16 +871,30 @@ RefPtr<GenericPromise> GMPParent::ParseC |
|
524 mLibs = "dxva2.dll"_ns; |
|
525 #endif |
|
526 } else { |
|
527 GMP_PARENT_LOG_DEBUG("%s: Unrecognized key system: %s, failing.", |
|
528 __FUNCTION__, mDisplayName.get()); |
|
529 return GenericPromise::CreateAndReject(NS_ERROR_FAILURE, __func__); |
|
530 } |
|
531 |
|
532 +#ifdef XP_LINUX |
|
533 + // These glibc libraries were merged into libc.so.6 as of glibc |
|
534 + // 2.34; they now exist only as stub libraries for compatibility and |
|
535 + // newly linked code won't depend on them, so we need to ensure |
|
536 + // they're loaded for plugins that may have been linked against a |
|
537 + // different version of glibc. (See also bug 1725828.) |
|
538 + if (!mDisplayName.EqualsASCII("clearkey")) { |
|
539 + if (!mLibs.IsEmpty()) { |
|
540 + mLibs.AppendLiteral(", "); |
|
541 + } |
|
542 + mLibs.AppendLiteral("libdl.so.2, libpthread.so.0, librt.so.1"); |
|
543 + } |
|
544 +#endif |
|
545 + |
|
546 nsCString codecsString = NS_ConvertUTF16toUTF8(m.mX_cdm_codecs); |
|
547 nsTArray<nsCString> codecs; |
|
548 SplitAt(",", codecsString, codecs); |
|
549 |
|
550 // Parse the codec strings in the manifest and map them to strings used |
|
551 // internally by Gecko for capability recognition. |
|
552 // |
|
553 // Google's code to parse manifests can be used as a reference for strings |
|