mirror of
git://slackware.nl/current.git
synced 2024-12-28 09:59:53 +01:00
42 lines
851 B
Diff
42 lines
851 B
Diff
|
--- ./ntext.cc.orig 2008-02-22 09:51:22.000000000 -0600
|
||
|
+++ ./ntext.cc 2010-02-19 21:53:58.000000000 -0600
|
||
|
@@ -33,6 +33,7 @@
|
||
|
#include <gtk/gtkselection.h>
|
||
|
#include "ntext.h"
|
||
|
#include "global.h"
|
||
|
+#include <assert.h>
|
||
|
|
||
|
NLine::NLine() {
|
||
|
Text = NULL;
|
||
|
@@ -238,23 +239,27 @@
|
||
|
int i;
|
||
|
NLine *nl;
|
||
|
char *p;
|
||
|
+ char *s;
|
||
|
|
||
|
if (len < 0) {
|
||
|
discardExcess();
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
- p = strchr(text, '\n');
|
||
|
+ s = strdup(text);
|
||
|
+ assert(s != NULL);
|
||
|
+ p = strchr(s, '\n');
|
||
|
if (p!=NULL) {
|
||
|
*p = 0;
|
||
|
- i = strlen(text);
|
||
|
- nl = new NLine(text, color);
|
||
|
+ i = strlen(s);
|
||
|
+ nl = new NLine(s, color);
|
||
|
*p = '\n';
|
||
|
lines.push_back(nl);
|
||
|
formatLine(lines.size()-1);
|
||
|
append(&p[1], len-(i+1), color);
|
||
|
return;
|
||
|
}
|
||
|
+ free (s);
|
||
|
|
||
|
// if search for \n failed, this is a single line
|
||
|
nl = new NLine(text, color);
|