There's a shortcut in place that uses the root selector as the context for the rest of the selector if the root selector uses an id. Later there was logic that used the context's parentNode instead if the first part of the selector was hierarchical; it was designed to handle selectors like Sizzle("> div", context) (e95367f).
The parentNode logic was only being used when the parts length equaled 1. That didn't account for selectors like $("#dialog ~ div button:contains('next')"). Changing the parentNode logic to apply when the parts length >= 1 fixes the issue.
I added a test for this new selector and checked that all the other tests pass.
This is my first time working with git submodules; if you'd like me to modify the pull request please let me know.
Shortcut to use id selector as context should consider hierarchy
Merge remote-tracking branch 'upstream/master'
parentNode logic in the call to Sizzle.find should apply when parts.l…
…ength >= 1. Fixes jQuery bug #9939. Closes #70.