Re: [Tracker] Result will be shorten when file name have symbol sigle quote
- From: jamie <jamiemcc blueyonder co uk>
- To: Halton Huo <Halton Huo Sun COM>
- Cc: Laurent Aguerreche <laurent aguerreche irisa fr>, Tracker-List <tracker-list gnome org>
- Subject: Re: [Tracker] Result will be shorten when file name have symbol sigle quote
- Date: Wed, 28 Nov 2007 13:30:48 +0000
On Wed, 2007-11-28 at 21:28 +0800, Halton Huo wrote:
Hi Jamie,
As title, when I have such file, the result for t-s-t and t-s (with
option -d) will be shorten.
Test case
===========
Suppose my watch dir is set to $HOME/Documents/test/symbols, and have
bunch of test case in that.
$cd /export/home/halton/Documents/test/symbols
$ls
1`2.txt 1=2.txt 1,2.txt 1?2.txt 1)2.txt 1}2.txt 1\2.txt 1+2.txt
1^2.txt 1>2.txt 1;2.txt 1'2.txt 1[2.txt 1 2 txt 1&2.txt
1~2.txt 1_2.txt 1:2.txt 1"2.txt 1]2.txt 1$2.txt 1#2.txt
1<2.txt 1-2.txt 1!2.txt 1(2.txt 1{2.txt 1*2.txt 1%2.txt
$tracker-search -s Text -d 1
/export/home/halton/Documents/test/symbols/1+2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1%2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1#2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1&2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1\2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1*2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1$2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1 2 txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1}2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1{2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1]2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1[2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1)2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1(2.txt : Text, text/plain,
/export/home/halton/Documents/test/symbols/1"2.txt : Text, text/plain,
My analysing
============
After debugging, found file 1'2.txt is save as in file-meta.db
3384|8|/export/home/halton/Documents/test/symbols|1''2.txt|1|text/plain|
0|5||||||||||||||1|1|0|0|0|-1|1196235455|0|0|
The saving will cause line 3246 in tracker-db-sqlite.c fail
g_file_test (res[0][0], G_FILE_TEST_EXISTS)
So problem is sqlite saving one sigle quote as two sigle quote in the
database.
Is it a know sqlite issue? Or a bug for tracker?
I believe Laurent added a call to escape params passed to sqlite in line
4463 in tracker-db-sqlite.c - this no doubts escapes the single quote.
Im not sure we need that call (Laurent?) as the params are passed to a
prepared query so should not need escaping?
jamie
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]