On Mon, Oct 24, 2016 at 11:45 PM, Albert Astals Cid <aa...@kde.org> wrote:

> El dilluns, 24 d’octubre de 2016, a les 12:58:30 CEST, Tomaz Canabrava va
> escriure:
> > So - I got a bit of crash on baloo - and I wonder what should I do to fix
> > it.
> > mostly because the crash is on an assert - wich means that this shouldn't
> > ever happen, and if it does, it's bugged.
> >
> > The affecting call is this:
> >
> > QByteArray DocumentUrlDB::get(quint64 docId) const
> > {
> >     Q_ASSERT(docId > 0);
> >
> >     IdFilenameDB idFilenameDb(m_idFilenameDbi, m_txn);
> >
> >     auto path = idFilenameDb.get(docId);
> >     if (path.name.isEmpty()) {
> >         return QByteArray();
> >     }
> >
> >     QByteArray ret = path.name;
> >     quint64 id = path.parentId;
> >
> >     while (id) {
> >         auto p = idFilenameDb.get(id);
> >         Q_ASSERT(!p.name.isEmpty());
> >
> >         ret = p.name + '/' + ret;
> >         id = p.parentId;
> >     }
> >
> >     return '/' + ret;
> > }
> >
> > aparently, my database has something that has a parent with no name -
> hm...
> > not sure what a parent means in baloo context / my guess is "folder", but
> > what could be the right thing do to in this case?
> >
> > - remove the index from the database
> > - try to reescan the file because the parent is borked
> > - show an information that there is a database inconsistency?
> >
> > the only thing it shouldn't do is crash :)
> >
> > Halp?
>
> i know it's a poor man's solution but replace the the assert with an if +
> return + qWarning  for the moment so it doesn't crash?
>

while of course this works, I got a lot of empty lines on krunner where a
folder should have been.
not perfect solution, but works. I never click on the folders anyway.


>
> Cheers,
>   Albert
>
> >
> > ➜  ~ krunner
> > Error contacting the daemon!
> > org.kde.kurifilter-ikws: ":q"
> > org.kde.kurifilter-ikws: Keywords Engine: Loading config...
> > org.kde.kurifilter-ikws: Web Shortcuts Enabled:  true
> > org.kde.kurifilter-ikws: Default Shortcut:  ""
> > org.kde.kurifilter-ikws: Keyword Delimiter:  :
> > ASSERT: "!p.name.isEmpty()" in file
> > /home/tcanabrava/Projects/kdesrc/baloo/src/engine/documenturldb.cpp,
> line
> > 143
> > KCrash: Attempting to start /home/tcanabrava/Projects/inst
> all/bin/krunner
> > from kdeinit
> > sock_file=/run/user/1000/kdeinit5__0
> > KCrash: crashing... crashRecursionCounter = 2
> > KCrash: Application Name = krunner path =
> > /home/tcanabrava/Projects/install/bin pid = 1693
> > KCrash: Arguments: /home/tcanabrava/Projects/install/bin/krunner
> > KCrash: Attempting to start
> > /home/tcanabrava/Projects/install/lib64/libexec/drkonqi from kdeinit
> > sock_file=/run/user/1000/kdeinit5__0
> > QSocketNotifier: Invalid socket 8 and type 'Read', disabling...
> > QSocketNotifier: Invalid socket 14 and type 'Read', disabling...
> > QSocketNotifier: Invalid socket 12 and type 'Read', disabling...
> > QSocketNotifier: Invalid socket 6 and type 'Read', disabling...
> > QSocketNotifier: Invalid socket 13 and type 'Read', disabling...
> > QSocketNotifier: Invalid socket 16 and type 'Exception', disabling...
> > QSocketNotifier: Invalid socket 10 and type 'Read', disabling...
> > QSocketNotifier: Invalid socket 15 and type 'Read', disabling...
> > intel_do_flush_locked failed: Bad file descriptor
>
>
>

Reply via email to