jtamate updated this revision to Diff 33242.
jtamate edited the summary of this revision.
jtamate added a comment.


  If I use if (!u.path().isEmpty()) or if (!u.path().isEmpty() && 
!u.path().endsWith('/')), 
  as soon as I enter the url fish://127.0.0.1 (without trailing /), I'm 
redirected to fish://127.0.0.1/home/jtorres (that didn't happen before), and 
after finishing reading the directory, assertion.
  
    kf5.kio.core: Internal error: job is listing 
QUrl("fish://127.0.0.1/home/jtorres") but directoryData says no listers are 
currently listing  "fish://127.0.0.1/home/jtorres"
    kf5.kio.core.dirlister: Items in use:
    kf5.kio.core.dirlister:     "fish://127.0.0.1/home/jtorres" URL: 
QUrl("fish://127.0.0.1/home/jtorres") rootItem: 
QUrl("fish://127.0.0.1/home/jtorres") autoUpdates refcount: 1 complete: true 
"with 1010 items."
    kf5.kio.core.dirlister: Directory data:
    kf5.kio.core.dirlister:    "fish://127.0.0.1/home/jtorres" 0 listers: ""
    kf5.kio.core.dirlister:    "fish://127.0.0.1/home/jtorres" 1 holders: " 
0x3279dd0"
    kf5.kio.core.dirlister: Jobs:
    kf5.kio.core.dirlister: Items in cache:
    kf5.kio.core.dirlister:     
"file:///virtual/kde5/5kde/build/frameworks/kio" rootItem: 
"file:///virtual/kde5/5kde/build/frameworks/kio" with 16 items.
    ASSERT: "!dirData.listersCurrentlyListing.isEmpty()" in file 
/g/5kde/frameworks/kio/src/core/kcoredirlister.cpp, line 1208
    
    
    #9  QMessageLogger::fatal (this=this@entry=0x7fff05486530, 
msg=msg@entry=0x7f36ba7ddeb0 "ASSERT: \"%s\" in file %s, line %d") at 
global/qlogging.cpp:816
    #10 0x00007f36ba548e86 in qt_assert 
(assertion=assertion@entry=0x7f36beb7b410 
"!dirData.listersCurrentlyListing.isEmpty()", file=file@entry=0x7f36beb7b0b0 
"/g/5kde/frameworks/kio/src/core/kcoredirlister.cpp", line=line@entry=1208) at 
global/qglobal.cpp:3123
    #11 0x00007f36beb40230 in KCoreDirListerCache::slotEntries 
(this=0x7f36bedaf420 <(anonymous 
namespace)::Q_QGS_kDirListerCache::innerFunction()::holder>, job=<optimized 
out>, entries=...) at /g/5kde/frameworks/kio/src/core/kcoredirlister.cpp:1208
    ...
    #18 0x00007f36beae500d in KIO::ListJob::entries (this=this@entry=0x324dd20, 
_t1=<optimized out>, _t1@entry=0x324dd20, _t2=...) at 
/virtual/kde5/5kde/build/frameworks/kio/src/core/KF5KIOCore_autogen/include/moc_listjob.cpp:232
    #19 0x00007f36beae6ce2 in KIO::ListJobPrivate::slotListEntries 
(this=0x37bd250, list=...) at /g/5kde/frameworks/kio/src/core/listjob.cpp:154
    #20 0x00007f36beae7052 in KIO::ListJobPrivate::<lambda(const 
UDSEntryList&)>::operator() (list=..., __closure=<optimized out>) at 
/g/5kde/frameworks/kio/src/core/listjob.cpp:288
  
  Checking for the slash in the string representation of the url, not only in 
the path part, works for me.

REPOSITORY
  R241 KIO

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D12371?vs=33211&id=33242

REVISION DETAIL
  https://phabricator.kde.org/D12371

AFFECTED FILES
  src/filewidgets/kfilewidget.cpp

To: jtamate, dfaure, #frameworks, apol
Cc: anthonyfieroni, apol, michaelh, bruns

Reply via email to