sam: corner cases are hard

This commit is contained in:
ftrvxmtrx 2016-10-18 20:27:08 +02:00
parent e19308ee16
commit d010b87b18

View file

@ -205,19 +205,18 @@ plumbformat(int i)
n += sprint(data+n, "f %s\n", addr); n += sprint(data+n, "f %s\n", addr);
n += sprint(data+n, "c\n"); n += sprint(data+n, "c\n");
s = memmove(data+n, m->data, m->ndata); s = memmove(data+n, m->data, m->ndata);
s--;
n += m->ndata; n += m->ndata;
if(data[n-1] != '\n') if(data[n-1] != '\n')
data[n++] = '\n'; data[n++] = '\n';
data[n] = 0; data[n] = 0;
replaced = 0; replaced = 0;
for(;;){ for(;;){
s = strstr(s, ".\n"); s = strstr(s, "\n.\n");
if(s == nil) if(s == nil)
break; break;
s[1] = '';
s += 2; s += 2;
if(s[-3] != '\n')
continue;
s[0] = '';
replaced = 1; replaced = 1;
} }
n += sprint(data+n, ".\n"); n += sprint(data+n, ".\n");