bug fixes, enhancements to handle weird QIF formats

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@326 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Linas Vepstas 1997-12-13 02:54:07 +00:00
parent bad4394866
commit ce94c29335

View File

@ -107,6 +107,14 @@ char * xaccReadQIFDiscard( int fd )
qifline = xaccReadQIFLine (fd);
return qifline;
} else
if (NSTRNCMP(qifline, "^\n")) {
qifline = xaccReadQIFLine (fd);
return qifline;
} else
if (NSTRNCMP(qifline, "^\r")) {
qifline = xaccReadQIFLine (fd);
return qifline;
} else
if ('!' == qifline [0]) return qifline;
qifline = xaccReadQIFLine (fd);
}
@ -187,6 +195,12 @@ char * xaccReadQIFCategory (int fd, Account * acc)
if (NSTRNCMP(qifline, "^^")) {
break;
} else
if (NSTRNCMP(qifline, "^\n")) {
break;
} else
if (NSTRNCMP(qifline, "^\r")) {
break;
} else
if ('!' == qifline [0]) break;
qifline = xaccReadQIFLine (fd);
@ -262,6 +276,12 @@ char * xaccReadQIFAccount (int fd, Account * acc)
if (NSTRNCMP (qifline, "^^")) {
break;
} else
if (NSTRNCMP (qifline, "^\n")) {
break;
} else
if (NSTRNCMP (qifline, "^\r")) {
break;
} else
if ('!' == qifline [0]) break;
qifline = xaccReadQIFLine (fd);
}
@ -740,6 +760,12 @@ char * xaccReadQIFTransaction (int fd, Account *acc)
if (NSTRNCMP (qifline, "^^")) {
break;
} else
if (NSTRNCMP (qifline, "^\n")) {
break;
} else
if (NSTRNCMP (qifline, "^\r")) {
break;
} else
if ('!' == qifline [0]) break;
qifline = xaccReadQIFLine (fd);
@ -829,11 +855,11 @@ char * xaccReadQIFTransList (int fd, Account *acc)
char * qifline;
if (!acc) return 0x0;
do {
qifline = xaccReadQIFTransaction (fd, acc);
qifline = xaccReadQIFTransaction (fd, acc);
while (qifline) {
if ('!' == qifline[0]) break;
} while (qifline);
qifline = xaccReadQIFTransaction (fd, acc);
}
return qifline;
}