Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDalai Felinto <dfelinto@gmail.com>2013-11-26 10:38:53 +0400
committerDalai Felinto <dfelinto@gmail.com>2013-11-26 10:51:06 +0400
commita03aec3178ecf17c06a684e8ebd495364d74d23f (patch)
treee9ef2024188a0b7f57af93367f167544342df7df /source/blender/blenkernel/intern/text.c
parentd4284056c7b3d512ba3e54bee16c83530c63e2bb (diff)
Fix: Text editor, blank lines were being indented
Summary: fixes T37613 Reviewers: campbellbarton, sergey Reviewed By: sergey Maniphest Tasks: T37613 Differential Revision: http://developer.blender.org/D42
Diffstat (limited to 'source/blender/blenkernel/intern/text.c')
-rw-r--r--source/blender/blenkernel/intern/text.c34
1 files changed, 19 insertions, 15 deletions
diff --git a/source/blender/blenkernel/intern/text.c b/source/blender/blenkernel/intern/text.c
index be43aae1ed3..96601985f67 100644
--- a/source/blender/blenkernel/intern/text.c
+++ b/source/blender/blenkernel/intern/text.c
@@ -2650,22 +2650,26 @@ void txt_indent(Text *text)
num = 0;
while (TRUE) {
- tmp = MEM_mallocN(text->curl->len + indentlen + 1, "textline_string");
-
- text->curc = 0;
- if (text->curc) memcpy(tmp, text->curl->line, text->curc); /* XXX never true, check prev line */
- memcpy(tmp + text->curc, add, indentlen);
-
- len = text->curl->len - text->curc;
- if (len > 0) memcpy(tmp + text->curc + indentlen, text->curl->line + text->curc, len);
- tmp[text->curl->len + indentlen] = 0;
- make_new_line(text->curl, tmp);
-
- text->curc += indentlen;
-
- txt_make_dirty(text);
- txt_clean_text(text);
+ /* don't indent blank lines */
+ if (text->curl->len != 0) {
+ tmp = MEM_mallocN(text->curl->len + indentlen + 1, "textline_string");
+
+ text->curc = 0;
+ if (text->curc) memcpy(tmp, text->curl->line, text->curc); /* XXX never true, check prev line */
+ memcpy(tmp + text->curc, add, indentlen);
+
+ len = text->curl->len - text->curc;
+ if (len > 0) memcpy(tmp + text->curc + indentlen, text->curl->line + text->curc, len);
+ tmp[text->curl->len + indentlen] = 0;
+
+ make_new_line(text->curl, tmp);
+
+ text->curc += indentlen;
+
+ txt_make_dirty(text);
+ txt_clean_text(text);
+ }
if (text->curl == text->sell) {
text->selc += indentlen;