<!DOCTYPE HTML>
<html class="reftest-wait">
<head>
<meta charset="utf-8">

<!-- Testcase for bug 879963 regression.
     We have two <style> elements with identical @font-face rules, which will
     share a common proxy font entry. When the entry is loaded, the references
     in both rules must be updated, otherwise text may disappear if the "wrong"
     (non-updated) rule is subsequently used.
     By disabling the first style element after the document has loaded (and the
     user font has been resolved to a real font entry), we can check that the
     second rule also works as expected.
     Note that if a platform doesn't have any of the local() fonts listed,
     the testcase will "pass" harmlessly as a no-op. -->

<style type="text/css" id="style1">
@font-face {
  font-family: foo;
  src: local("Arial"),
       local("DejaVu Sans"),
       local("Free Sans"),
       local("Open Sans"),
       local("Droid Sans"),
       local("Roboto");
}
</style>

<style type="text/css" id="style2">
@font-face {
  font-family: foo;
  src: local("Arial"),
       local("DejaVu Sans"),
       local("Free Sans"),
       local("Open Sans"),
       local("Droid Sans"),
       local("Roboto");
}
</style>

<style type="text/css">
body {
  font-family: serif;
}
.test {
  font-family: foo;
}
</style>

<script type="application/javascript">
function run() {
  document.getElementById("style1").disabled = true;
  document.documentElement.removeAttribute("class");
}
</script>

</head>

<body onload="run()">
<div>
foo <span class="test">bar</span> baz
</div>
</body>

</html>