Recovering from GIT chaos
This commit is contained in:
parent
77871b3d32
commit
95213afeb5
@ -285,18 +285,36 @@ static int edit(int chn, int onl)
|
|||||||
#else
|
#else
|
||||||
if ((f->inCapacity + 1) < sizeof(f->inBuf))
|
if ((f->inCapacity + 1) < sizeof(f->inBuf))
|
||||||
{
|
{
|
||||||
|
/* Ignore carriage returns that may accompany a CRLF sequence.
|
||||||
|
* REVISIT: Some environments may have other line termination rules
|
||||||
|
*/
|
||||||
|
|
||||||
|
if (ch != '\r')
|
||||||
|
{
|
||||||
|
/* Is this a new line character */
|
||||||
|
|
||||||
if (ch != '\n')
|
if (ch != '\n')
|
||||||
{
|
{
|
||||||
|
/* No.. escape control characters other than newline and
|
||||||
|
* carriage return
|
||||||
|
*/
|
||||||
|
|
||||||
if (ch >= '\0' && ch < ' ')
|
if (ch >= '\0' && ch < ' ')
|
||||||
{
|
{
|
||||||
FS_putChar(chn, '^');
|
FS_putChar(chn, '^');
|
||||||
FS_putChar(chn, ch ? (ch + 'a' - 1) : '@');
|
FS_putChar(chn, ch ? (ch + 'a' - 1) : '@');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Output normal, printable characters */
|
||||||
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
FS_putChar(chn, ch);
|
FS_putChar(chn, ch);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Echo the newline (or not) */
|
||||||
|
|
||||||
else if (onl)
|
else if (onl)
|
||||||
{
|
{
|
||||||
FS_putChar(chn, '\n');
|
FS_putChar(chn, '\n');
|
||||||
@ -304,6 +322,7 @@ static int edit(int chn, int onl)
|
|||||||
|
|
||||||
f->inBuf[f->inCapacity++] = ch;
|
f->inBuf[f->inCapacity++] = ch;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
while (ch != '\n');
|
while (ch != '\n');
|
||||||
@ -1669,12 +1688,6 @@ int FS_appendToString(int chn, struct String *s, int onl)
|
|||||||
f->inSize = f->inCapacity = 0;
|
f->inSize = f->inCapacity = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s->length >= 2 && s->character[s->length - 2] == '\r')
|
|
||||||
{
|
|
||||||
s->character[s->length - 2] = '\n';
|
|
||||||
--s->length;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user