<table><tr><td style="">dfaure added inline comments.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D18296">View Revision</a></tr></table><br /><div><strong>INLINE COMMENTS</strong><div><div style="margin: 6px 0 12px 0;"><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D18296#inline-114626">View Inline</a><span style="color: #4b4d51; font-weight: bold;">arrowd</span> wrote in <span style="color: #4b4d51; font-weight: bold;">urlinfo.h:39</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p style="padding: 0; margin: 8px;">const QString &</p></blockquote>

<p style="padding: 0; margin: 8px;">There is <tt style="background: #ebebeb; font-size: 13px;">path.chop(match.capturedLength());</tt>, which requires non-const <tt style="background: #ebebeb; font-size: 13px;">QString</tt>.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p style="padding: 0; margin: 8px;">And what if it's a URL? At this point this string is pathOrUrl.</p></blockquote>

<p style="padding: 0; margin: 8px;">Well, <tt style="background: #ebebeb; font-size: 13px;">if (QFile::exists(path))</tt> will return false in this case, and <tt style="background: #ebebeb; font-size: 13px;">url</tt> would get populated by <tt style="background: #ebebeb; font-size: 13px;">url = QUrl::fromUserInput()</tt>. What's wrong with that?</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">I'm suggesting to at least rename the argument to pathOrUrl to be clear about what it contains.<br />
A path is not a URL.</p>

<p style="padding: 0; margin: 8px;">I see, about the <tt style="background: #ebebeb; font-size: 13px;">chop()</tt>. It is customary, however, to make a local copy where needed. For instance this will avoid the copy when the file exists (and we get to the early return, before the copy that you'll need only further down).</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D18296#inline-114627">View Inline</a><span style="color: #4b4d51; font-weight: bold;">arrowd</span> wrote in <span style="color: #4b4d51; font-weight: bold;">urlinfo.h:77</span></div>
<div style="margin: 8px 0; padding: 0 12px; color: #74777D;"><p style="padding: 0; margin: 8px;">It is not about creating missing files, but reaction to user typos. If I try to open <tt style="background: #ebebeb; font-size: 13px;">fiel.txt</tt> instead of a <tt style="background: #ebebeb; font-size: 13px;">file.txt</tt>, I want to get a "no such file or directory error message" instead of popping browser trying to open "http://fiel.txt".</p></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">But then you can't do <tt style="background: #ebebeb; font-size: 13px;">kde-open5 www.google.fr</tt> anymore, right?</p>

<p style="padding: 0; margin: 8px;">I see what you mean with typo handling, but there is no perfect solution. Either we treat typos as URLs (but it means we also treat actual URLs as such), or we treat everything non-existing as a local file (breaking any use of short URLs). The latter is OK for kwrite, but not for the more general purpose kioclient / kde-open5.</p></div></div></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R126 KDE CLI Utilities</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D18296">https://phabricator.kde.org/D18296</a></div></div><br /><div><strong>To: </strong>arrowd, Plasma, KTextEditor, broulik, Frameworks, pino, cfeck, dfaure, elvisangelaccio<br /><strong>Cc: </strong>apol, cullmann, plasma-devel, jraleigh, GB_2, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, mart<br /></div>