mirror of
https://github.com/mdbtools/mdbtools.git
synced 2025-07-17 19:59:35 +08:00
bug fix for 'bad' data with odd number of UCS-2 bytes
This commit is contained in:
parent
23bab7c2d6
commit
9d56b0c3d8
@ -1,3 +1,9 @@
|
|||||||
|
Tue Aug 30 08:51:31 EDT 2016 Brian Bruns <brian@bruns.com>
|
||||||
|
* bug fix for 'bad' data with odd number of UCS-2 bytes
|
||||||
|
|
||||||
|
Tue Aug 30 08:40:00 EDT 2016 Brian Bruns <brian@bruns.com>
|
||||||
|
* add LIMIT clause to SQL engine
|
||||||
|
|
||||||
Tue May 23 19:40:55 CDT 2006 Jeff Smith <whydoubt@yahoo.com>
|
Tue May 23 19:40:55 CDT 2006 Jeff Smith <whydoubt@yahoo.com>
|
||||||
* src/util/mdb-export.c: Fix typo in help text
|
* src/util/mdb-export.c: Fix typo in help text
|
||||||
* configure.in: Clean up use of autoconf macros
|
* configure.in: Clean up use of autoconf macros
|
||||||
|
@ -70,6 +70,13 @@ mdb_unicode2ascii(MdbHandle *mdb, char *src, size_t slen, char *dest, size_t dle
|
|||||||
//printf("1 len_in %d len_out %d\n",len_in, len_out);
|
//printf("1 len_in %d len_out %d\n",len_in, len_out);
|
||||||
while (1) {
|
while (1) {
|
||||||
iconv(mdb->iconv_in, &in_ptr, &len_in, &out_ptr, &len_out);
|
iconv(mdb->iconv_in, &in_ptr, &len_in, &out_ptr, &len_out);
|
||||||
|
/*
|
||||||
|
* Have seen database with odd number of bytes in UCS-2, shouldn't happen but protect against it
|
||||||
|
*/
|
||||||
|
if (!IS_JET3(mdb) && len_in<=1) {
|
||||||
|
//fprintf(stderr, "Detected invalid number of UCS-2 bytes\n");
|
||||||
|
break;
|
||||||
|
}
|
||||||
if ((!len_in) || (errno == E2BIG)) break;
|
if ((!len_in) || (errno == E2BIG)) break;
|
||||||
/* Don't bail if impossible conversion is encountered */
|
/* Don't bail if impossible conversion is encountered */
|
||||||
in_ptr += (IS_JET3(mdb)) ? 1 : 2;
|
in_ptr += (IS_JET3(mdb)) ? 1 : 2;
|
||||||
|
Loading…
Reference in New Issue
Block a user