diff options
author | Martin Kampas <martin.kampas@tieto.com> | 2014-10-07 12:28:04 +0200 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2014-12-20 17:43:47 +0100 |
commit | cd731b485ba38d9a010d010a11075fe2cef49276 (patch) | |
tree | 4ccad793c974bd4b8d8ae3353234ee29a4a9c421 | |
parent | 3808c42334f80dcb4c577b48b5d1b0ed7a20c960 (diff) | |
download | tracker-cd731b485ba38d9a010d010a11075fe2cef49276.tar.gz |
miner-fs: Fix tracking file move
Identified by MinerCrawlTest::test_07_move_from_monitored_to_monitored
(300-miner-basic-ops.py)
In item_move() it fails to get source_iri, does not check it's validity and
uses it in the DELETE expression of the SPARQL query constructed there.
Broken since d836f00 (libtracker-miner: Store iri transiently as GFile
qdata) - tracker_file_notifier_get_file_iri() is added 'force' argument
and (wrapped with lookup_file_urn) passed force=FALSE from item_move().
This call then fails for regular files because only directories are
cached once crawling has completed as stated in the comment in
finish_current_directory() in libtracker-miner/tracker-file-notifier.c.
https://bugzilla.gnome.org/show_bug.cgi?id=678986
-rw-r--r-- | src/libtracker-miner/tracker-miner-fs.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libtracker-miner/tracker-miner-fs.c b/src/libtracker-miner/tracker-miner-fs.c index 28842e320..113c77021 100644 --- a/src/libtracker-miner/tracker-miner-fs.c +++ b/src/libtracker-miner/tracker-miner-fs.c @@ -1877,7 +1877,7 @@ item_move (TrackerMinerFS *fs, NULL, NULL); /* Get 'source' ID */ - source_iri = lookup_file_urn (fs, source_file, FALSE); + source_iri = lookup_file_urn (fs, source_file, TRUE); source_exists = (source_iri != NULL); if (!file_info) { |