Description of problem:
Pirut crashes if one single ' is included somewhere in the text string in the
Version-Release number of selected component (if applicable):
Steps to Reproduce:
Open up Pirut and type in a Search for a package and use a ' anywhere in the
search string. Then hit the Search-button.
Weird. Reproducible, but I can't see why this would happen from pirut but not
from yum on the command line
Okay, figured it out. This is a bug in yum and we're just getting lucky on the
Hi Jeremy, I was just wondering if you forgot about this bug? It still appears
in Fedora 8. I noticed that you fixed like 10 other crash bugs that were
included in an update today but not this one... Not that the other fixes weren't
important as well :)
Jeremy didn't forget, this one is on me it's not a pirut bug it's a yum bug - we
just happen to escape it in yum for completely arbitrary reasons. :)
I'll take care of it soon.
Ok cool, thanks for letting me know Seth! :)
Created attachment 296354 [details]
Patch for this one issue.
Maybe this will solve this one issue. But I think, there is the same problem
with escaping through all yum :-/
Created attachment 296430 [details]
crash dump compare
Thanks Michal but it doesn't seem to solve the issue here. I have:
I manually added your code fix to
/usr/lib/python2.5/site-packages/yum/sqlitesack.py but pirut still crashes, and
now it says "unrecognized token" as well. The attachment contains the
comparison of two crash logs, one with the patch applied and one without.
Created attachment 296431 [details]
My patched sqlitesack.py
Stefan: ah, I see :( My fault. Sorry.
Well thanks for trying Michal!
Okay tested under 3.2.12 - same problem but I do know where to go to solve it,
now, I think. Just posting an update to the bug.
Changing version to '9' as part of upcoming Fedora 9 GA.
More information and reason for this action is here:
Created attachment 307182 [details]
Yum crashes searching for quote character
Created attachment 307185 [details]
Patch for sqlitesack.py
Yum can be made to exhibit the same problem on the command line, as per the
attachment (yum search "'test'" - obviously the quotes are important).
Normally the shell will strip quotes for you, so this doesn't normally show up.
The attached patch for seems to fix the problem for both Pirut and Yum, but I'm
not certain it will cover all cases.
I get the same behavior with or without your patch. It outputs:
yum search "'test'"
Error: near "test": syntax error
My bad I'd tested using "'" ... which works!
The patch is correct, in theory, it just misses a couple of places. I've now
tested for "a'" and "'s" which both work and find something. "'test'" doesn't
have any results, but doesn't error. commit af9243770367e8337969738e30ec20bb5a2b7ea0
We should. probably escape more chars (search '%', fails), or move to ? subst.
Sorry, I've been testing of Fedora 8 rather than the latest release - the '%'
issue doesn't show there. I'll take a proper look at the current code later -
yum-3.2.17-1.fc9 has been submitted as an update for Fedora 9
yum-3.2.17-1.fc9 has been pushed to the Fedora 9 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
su -c 'yum --enablerepo=updates-testing update yum'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F9/FEDORA-2008-6301
yum-3.2.17-2.fc8 has been submitted as an update for Fedora 8
yum-3.2.17-2.fc9 has been pushed to the Fedora 9 stable repository. If problems still persist, please make note of it in this bug report.
yum-3.2.18-1.fc8 has been submitted as an update for Fedora 8
yum-3.2.19-1.fc8 has been submitted as an update for Fedora 8.
yum-3.2.19-3.fc8 has been pushed to the Fedora 8 stable repository. If problems still persist, please make note of it in this bug report.