55 lines
2.2 KiB
HTML
55 lines
2.2 KiB
HTML
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<style type="text/css">
|
|
#telugu {
|
|
font-size: 2cm;
|
|
line-height: 1.5em;
|
|
font-family: "Lohit Telugu";
|
|
}
|
|
</style>
|
|
<script>
|
|
var ITERATIONS = 10000;
|
|
|
|
if (window.testRunner)
|
|
testRunner.waitUntilDone();
|
|
|
|
function mouseSelection() {
|
|
var body = document.body;
|
|
body.focus();
|
|
|
|
xStart = 0;
|
|
yStart = 0;
|
|
|
|
if (window.eventSender) {
|
|
eventSender.mouseMoveTo(xStart, yStart);
|
|
eventSender.mouseDown();
|
|
for(i=0;i<ITERATIONS;i++) {
|
|
randomCoord = randomCoordinate();
|
|
eventSender.mouseMoveTo(randomCoord.x, randomCoord.y);
|
|
}
|
|
}
|
|
if (window.testRunnder)
|
|
testRunner.notifyDone();
|
|
}
|
|
|
|
function randomCoordinate(axis) {
|
|
return { x: Math.floor(Math.random()*window.innerWidth),
|
|
y: Math.floor(Math.random()* window.innerHeight) }
|
|
}
|
|
|
|
</script>
|
|
</head>
|
|
<body onload="mouseSelection()"><p>
|
|
This test fuzzes HarfBuzzShaper::offsetForPosition to trigger an assertion in the downstream function characterIndexForXPosition().
|
|
See https://bugs.webkit.org/show_bug.cgi?id=92376 - reason of the assertion being hit is a minuscule floating point inaccuracy
|
|
between an if condition that gates the call to characterIndexForXPosition and the actual argument that's then given to the function.
|
|
This test works on WebKit EFL, with the Ubuntu Telugu Lohit font installed to the EFL jhbuild font directory, like:</p>
|
|
<pre>$ cp /usr/share/fonts/truetype/ttf-telugu-fonts/lohit_te.ttf WebKitBuild/Dependencies/Source/webkitgtk-test-fonts-0.0.3</pre>
|
|
<p>Run with:</p>
|
|
<pre>$ WebKitBuild/Debug/bin/DumpRenderTree ManualTests/harfbuzz-mouse-selection-crash.html</pre>
|
|
<p>Before the change, this would crash 10/10 times. Test passes if it does not crash.</p>
|
|
<p id="telugu">చేనేత కార్మికుల సమస్యలను ప్రభుత్వం దృష్టికి తీసుకువెళ్లేందుకు సిరిసిల్లలో వైఎస్ఆర్ సిపి గౌరవాధ్యక్షురాలు విజయమ్మ చేపట్టినదీక్ష విజయవంతమైంది.</p>
|
|
</body>
|
|
</html>
|