<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">--- ksirc/iocontroller.cpp
+++ ksirc/iocontroller.cpp
@@ -237,7 +237,7 @@
 
     if((line.length() &gt; 0) &amp;&amp; (line[0] == '~')){
       pos3 = line.find('~', 1);
-      if(pos3 &gt; 0){
+      if(pos3 &gt; 1){
 	name = line.mid(1,pos3-1).lower();
 	name = name.lower();
 	line.remove(0, pos3+1);
@@ -266,13 +266,13 @@
         if(ksopts-&gt;autoCreateWin == TRUE &amp;&amp; line[0] != '`' &amp;&amp; line[1] != '#' &amp;&amp; line[1] != '&amp;' &amp;&amp; noticeCreate) {
 	    //kdDebug(5008) &lt;&lt; "Creating window for: " &lt;&lt; qsname &lt;&lt; " because of: " &lt;&lt; line.data() &lt;&lt; endl;
 	    ksircproc-&gt;new_toplevel(KSircChannel(ksircproc-&gt;serverName(), qsname));
-	    assert(ksircproc-&gt;TopList[qsname] != 0x0);
         }
-        else{
+        if (!ksircproc-&gt;TopList[qsname]) {
             qsname = "!default";
             if(line[0] == '`')
                 qsname = "!discard";
         }
+        assert(ksircproc-&gt;TopList[qsname]);
     }
 
     ksircproc-&gt;TopList[qsname]-&gt;sirc_receive(line);
</pre></body></html>