freetds AT lists.ibiblio.org
Subject: FreeTDS Development Group
List archive
- From: christos AT zoulas.com (Christos Zoulas)
- To: freetds AT lists.ibiblio.org
- Subject: [freetds] bcp missing patch chunk.
- Date: Mon, 5 Jan 2004 17:30:30 -0500
So I dowloaded the rc2 version [please bump the version in the future
if you make changes, there seem to be too many rc2's now]. The one in
nightly compiles, the one that is marked release candidate does not.
I found that a chunk of the patch that I sent was not applied, and I
think I sent the second chunk in another patch today that should fix
freddy's problem. The first part absolutely necessary. The second is
untested and should only affect tds < 7.0.
christos
Index: bcp.c
===================================================================
RCS file: /src/twosigma/cvsroot/pub/devel/freetds/src/dblib/bcp.c,v
retrieving revision 1.1.1.6
diff -u -u -r1.1.1.6 bcp.c
--- bcp.c 5 Jan 2004 19:24:25 -0000 1.1.1.6
+++ bcp.c 5 Jan 2004 22:27:35 -0000
@@ -994,6 +994,10 @@
return (FAIL);
}
collen = len;
+ if (collen == -1) {
+ collen = 0;
+ data_is_null = 1;
+ }
}
coldata = (BYTE *) calloc(1, 1 + collen);
if (coldata == NULL) {
@@ -1275,9 +1279,12 @@
memcpy(&rowbuffer[row_pos], num->array,
cpbytes);
} else {
/* compute the length to copy to the row **
buffer */
-
- cpbytes = bcpcol->data_size >
bcpcol->db_length ? bcpcol->db_length : bcpcol->data_size;
- memcpy(&rowbuffer[row_pos], bcpcol->data,
cpbytes);
+ if (bcpcol->data_size == -1) {
+ cpbytes = 0;
+ } else {
+ cpbytes = bcpcol->data_size >
bcpcol->db_length ? bcpcol->db_length : bcpcol->data_size;
+ memcpy(&rowbuffer[row_pos],
bcpcol->data, cpbytes);
+ }
}
-
[freetds] bcp missing patch chunk.,
Christos Zoulas, 01/05/2004
- Re: [freetds] bcp missing patch chunk., James K. Lowden, 01/05/2004
Archive powered by MHonArc 2.6.24.