Fix segfault on wide terminal with long tearline, tagline or origin. Bugreport from 2:5059/37
This commit is contained in:
parent
f22d4dd7f3
commit
1178743894
@ -13,6 +13,9 @@ _____________________________________________________________________________
|
|||||||
Ž¡®§ 票ï: "-" - ¨á¯à ¢«¥¨¥, "+" - ®¢®¥, "!" - áãé¥á⢥®¥ ¨§¬¥¥¨¥.
|
Ž¡®§ 票ï: "-" - ¨á¯à ¢«¥¨¥, "+" - ®¢®¥, "!" - áãé¥á⢥®¥ ¨§¬¥¥¨¥.
|
||||||
_____________________________________________________________________________
|
_____________________________________________________________________________
|
||||||
|
|
||||||
|
- ˆá¯à ¢«¥ ®è¨¡ª , ¯à¨¢®¤¨¢è ï ª ¯¥à¥¯®«¥¨î ¡ãä¥à è¨à®ª®¬ â¥à¬¨ «¥
|
||||||
|
¯à¨ ¨á¯®«ì§®¢ ¨¨ ¤«¨®£® â £« © , â¨à« © ¨«¨ ®à¨¤¦¨ .
|
||||||
|
|
||||||
- “áâà ñ ª®ä«¨ªâ á® áâ ¤ à⮩ äãªæ¨¥© pow() ¢ Visual Studio 2010.
|
- “áâà ñ ª®ä«¨ªâ á® áâ ¤ à⮩ äãªæ¨¥© pow() ¢ Visual Studio 2010.
|
||||||
|
|
||||||
+ „«ï ¯à®¢¥àª¨ ®à䮣à 䨨 ¬®¦® ®¤®¢à¥¬¥® ¨á¯®«ì§®¢ âì ¥áª®«ìª® á«®¢ ३.
|
+ „«ï ¯à®¢¥àª¨ ®à䮣à 䨨 ¬®¦® ®¤®¢à¥¬¥® ¨á¯®«ì§®¢ âì ¥áª®«ìª® á«®¢ ३.
|
||||||
|
@ -13,6 +13,8 @@ ______________________________________________________________________
|
|||||||
Legend: "-" - bugfix, "+" - new feature, "!" - important modification.
|
Legend: "-" - bugfix, "+" - new feature, "!" - important modification.
|
||||||
______________________________________________________________________
|
______________________________________________________________________
|
||||||
|
|
||||||
|
- Fix segfault on wide terminal with long tearline, tagline or origin.
|
||||||
|
|
||||||
- The conflict to standard function pow() in Visual Studio 2010 is
|
- The conflict to standard function pow() in Visual Studio 2010 is
|
||||||
eliminated.
|
eliminated.
|
||||||
|
|
||||||
|
@ -1537,7 +1537,7 @@ void ScanKludges(GMsg* msg, int getvalue) {
|
|||||||
line->type |= GLINE_TAGL;
|
line->type |= GLINE_TAGL;
|
||||||
line->color = C_READG;
|
line->color = C_READG;
|
||||||
if(AA->Taglinesupport())
|
if(AA->Taglinesupport())
|
||||||
strbtrim(strcpy(msg->tagline, ptr+3));
|
strbtrim(strxcpy(msg->tagline, ptr+3, sizeof(msg->tagline)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1561,7 +1561,7 @@ void ScanKludges(GMsg* msg, int getvalue) {
|
|||||||
}
|
}
|
||||||
tearln->type |= GLINE_TEAR;
|
tearln->type |= GLINE_TEAR;
|
||||||
tearln->color = C_READT;
|
tearln->color = C_READT;
|
||||||
strbtrim(strcpy(msg->tearline, ptr+3));
|
strbtrim(strxcpy(msg->tearline, ptr+3, sizeof(msg->tearline)));
|
||||||
|
|
||||||
if(getvalue and CFG->gedhandshake) {
|
if(getvalue and CFG->gedhandshake) {
|
||||||
char* tearid[] = {
|
char* tearid[] = {
|
||||||
@ -1606,7 +1606,7 @@ void ScanKludges(GMsg* msg, int getvalue) {
|
|||||||
originlineno = lineno;
|
originlineno = lineno;
|
||||||
line->type |= GLINE_ORIG;
|
line->type |= GLINE_ORIG;
|
||||||
line->color = C_READO;
|
line->color = C_READO;
|
||||||
strcpy(msg->origin, line->txt.c_str()+11);
|
strxcpy(msg->origin, line->txt.c_str()+11, sizeof(msg->origin));
|
||||||
if(nextor) { // Get the next line too
|
if(nextor) { // Get the next line too
|
||||||
strcat(msg->origin, line->next->txt.c_str());
|
strcat(msg->origin, line->next->txt.c_str());
|
||||||
line->next->color = C_READO;
|
line->next->color = C_READO;
|
||||||
|
Reference in New Issue
Block a user