Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error: Invalid arguments to GM_util.hitch() when trying to use setTimeOut() #1552

Closed
martinmitchell opened this issue May 10, 2012 · 5 comments
Milestone

Comments

@martinmitchell
Copy link

Affecting:
FF 12.0
GS 0.9.19

Rolling back to 0.9.18 fixes the issue.

When a script is using setTimeOut in the Error Console I see " Error: Invalid arguments to GM_util.hitch(). "

@cn1h
Copy link

cn1h commented May 10, 2012

yes, I got the same problem. the same code worked just fine yesterday, and today it doesn't work anymore. I checked the add-ons in FF, it just updated the GM to 0.9.19, and it doesn't work anymore!
btw, the setInterval() works just like before.

@Ventero
Copy link
Contributor

Ventero commented May 10, 2012

Note: This only happens when using a string as first parameter to setTimeout, e.g.

setTimeout("alert(1)", 0);

@martinmitchell
Copy link
Author

I had it happening with either of these cases, so maybe when it parses a string?

if(count>2){ console.log('Delete'); setTimeout('document.getElementById("del").click()',4000); } else { console.log('Next'); setTimeout(function(){window.location.href = 'page.php?id=2'}, 4000); }

@mjh563
Copy link

mjh563 commented May 11, 2012

I didn't think passing a string to setTimeout ever worked. Isn't that one of the "Greasemonkey pitfalls"?

@seanwlx
Copy link

seanwlx commented May 11, 2012

There's two separate issues

  1. If you pass a string to setTimeout it fails with "Invalid arguments to GM_util.hitch()". This used to work in 0.9.18.
  2. If you use a delay of ~> 2 seconds setTimeout fails silently.
setTimeout(function() { alert('foo1'); }, 1000);  //This works
setTimeout(function() { alert('foo2'); }, 5000);  //This fails silently
setTimeout("alert('foo3')", 2000);  //This fails with GM_util error

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants