← Back to team overview

zeitgeist team mailing list archive

[Bug 598577] [NEW] .desktop file parser not resilient enough

 

Public bug reported:

I got the code from bzr, the last revision from the log is 1505. After I
installed zeitgeist I ran:

python zeitgeist-daemon.py 
python zeitgeist-datahub.py 

In different terminals. zeitgeist-daemon seems to capture events
correctly but there is something wrong with zeitgeist-datahub, here is
the terminal output:

=====================================
FROM: python zeitgeist-daemon.py 
=====================================
DEBUG:zeitgeist.engine:daemon is configured to run with these extensions: ['_zeitgeist.engine.extensions.blacklist.Blacklist', '_zeitgeist.engine.extensions.datasource_registry.DataSourceRegistry']
INFO:zeitgeist.sql:Using database: /home/mario/.local/share/zeitgeist/activity.sqlite
DEBUG:zeitgeist.sql:Core schema is good. DB loaded in 1.78217887878ms
DEBUG:zeitgeist.extension:Loading extension 'Blacklist'
DEBUG:zeitgeist.blacklist:No existing blacklist config found
DEBUG:zeitgeist.extension:Loading extension 'DataSourceRegistry'
DEBUG:zeitgeist.datasource_registry:Loaded data-source data from /home/mario/.local/share/zeitgeist/datasources.pickle
DEBUG:root:Checking for another running instance...
DEBUG:root:No running instances found.
INFO:root:Starting Zeitgeist service...

=====================================
FROM: python zeitgeist-datahub.py 
=====================================
DEBUG:root:Updating database with new Recently Used Documents items
Traceback (most recent call last):
  File "zeitgeist-datahub.py", line 108, in _update_db_async
    events = self._sources_queue[0].get_items()
  File "/home/mario/zeitgeist/zeitgeist/zeitgeist/../_zeitgeist/loggers/zeitgeist_base.py", line 81, in get_items
    return self._get_items()
  File "/home/mario/zeitgeist/zeitgeist/zeitgeist/../_zeitgeist/loggers/datasources/recent.py", line 293, in _get_items
    desktopfile = self._find_desktop_file_for_application(application)
  File "/home/mario/zeitgeist/zeitgeist/zeitgeist/../_zeitgeist/loggers/datasources/recent.py", line 265, in _find_desktop_file_for_application
    line.split("=", 1)[-1].strip().split()[0] == \
IndexError: list index out of range

What am I doing wrong?

Initially, from ppa packages on two different computers, GAJ did not
show any entries, just "pinned items". I ran these commands because I
saw the answer to question #99109, no luck with any version (ppa or
bazar).

Thanks in advanced.

** Affects: zeitgeist
     Importance: Low
     Assignee: Siegfried Gevatter (rainct)
         Status: In Progress

** Changed in: zeitgeist
   Importance: Undecided => Low

** Changed in: zeitgeist
       Status: New => In Progress

** Changed in: zeitgeist
    Milestone: None => 0.4.1

** Changed in: zeitgeist
     Assignee: (unassigned) => Siegfried Gevatter (rainct)

-- 
.desktop file parser not resilient enough
https://bugs.launchpad.net/bugs/598577
You received this bug notification because you are a member of Zeitgeist
Framework Team, which is subscribed to Zeitgeist Framework.

Status in Zeitgeist Framework: In Progress

Bug description:
I got the code from bzr, the last revision from the log is 1505. After I installed zeitgeist I ran:

python zeitgeist-daemon.py 
python zeitgeist-datahub.py 

In different terminals. zeitgeist-daemon seems to capture events correctly but there is something wrong with zeitgeist-datahub, here is the terminal output:

=====================================
FROM: python zeitgeist-daemon.py 
=====================================
DEBUG:zeitgeist.engine:daemon is configured to run with these extensions: ['_zeitgeist.engine.extensions.blacklist.Blacklist', '_zeitgeist.engine.extensions.datasource_registry.DataSourceRegistry']
INFO:zeitgeist.sql:Using database: /home/mario/.local/share/zeitgeist/activity.sqlite
DEBUG:zeitgeist.sql:Core schema is good. DB loaded in 1.78217887878ms
DEBUG:zeitgeist.extension:Loading extension 'Blacklist'
DEBUG:zeitgeist.blacklist:No existing blacklist config found
DEBUG:zeitgeist.extension:Loading extension 'DataSourceRegistry'
DEBUG:zeitgeist.datasource_registry:Loaded data-source data from /home/mario/.local/share/zeitgeist/datasources.pickle
DEBUG:root:Checking for another running instance...
DEBUG:root:No running instances found.
INFO:root:Starting Zeitgeist service...

=====================================
FROM: python zeitgeist-datahub.py 
=====================================
DEBUG:root:Updating database with new Recently Used Documents items
Traceback (most recent call last):
  File "zeitgeist-datahub.py", line 108, in _update_db_async
    events = self._sources_queue[0].get_items()
  File "/home/mario/zeitgeist/zeitgeist/zeitgeist/../_zeitgeist/loggers/zeitgeist_base.py", line 81, in get_items
    return self._get_items()
  File "/home/mario/zeitgeist/zeitgeist/zeitgeist/../_zeitgeist/loggers/datasources/recent.py", line 293, in _get_items
    desktopfile = self._find_desktop_file_for_application(application)
  File "/home/mario/zeitgeist/zeitgeist/zeitgeist/../_zeitgeist/loggers/datasources/recent.py", line 265, in _find_desktop_file_for_application
    line.split("=", 1)[-1].strip().split()[0] == \
IndexError: list index out of range

What am I doing wrong?

Initially, from ppa packages on two different computers, GAJ did not show any entries, just "pinned items". I ran these commands because I saw the answer to question #99109, no luck with any version (ppa or bazar).

Thanks in advanced.





Follow ups

References