1 more bug nuked. we must convert \n to \r from copy & paste in terms. yay!
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 6 Jul 2012 10:08:51 +0000 (10:08 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 6 Jul 2012 10:08:51 +0000 (10:08 +0000)
git-svn-id: http://svn.enlightenment.org/svn/e/trunk/terminology@73407 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/bin/termio.c

index c34952a..8894c5e 100644 (file)
@@ -896,7 +896,24 @@ _getsel_cb(void *data, Evas_Object *obj __UNUSED__, Elm_Selection_Data *ev)
    if (ev->format == ELM_SEL_FORMAT_TEXT)
      {
         if (ev->len > 0)
-          termpty_write(sd->pty, ev->data, ev->len - 1);
+          {
+             char *tmp, *s;
+             int i;
+
+             // apparently we have to convert \n into \r in terminal land.
+             tmp = malloc(ev->len);
+             if (tmp)
+               {
+                  s = ev->data;
+                  for (i = 0; i < ev->len; i++)
+                    {
+                       tmp[i] = s[i];
+                       if (tmp[i] == '\n') tmp[i] = '\r';
+                    }
+                  termpty_write(sd->pty, tmp, ev->len - 1);
+                  free(tmp);
+               }
+          }
      }
    return EINA_TRUE;
 }