From: <br...@br...> - 2004-03-06 13:57:02
|
Ok, a better fix is in for this I moved mdb_unicode2ascii from libmdb/data.c to libmdb/iconv.c and added a corresponding mdb_ascii2unicode function. This also gets rid of the need to malloc/free. oops, forgot to remove the old function...will do that today. Brian On Fri, 05 Mar 2004 07:45:52 -0800 (PST), br...@br... wrote: > > Yeah that was a quick fix when I noticed the results of the patch as > is. I want to re-visit it today or tomorrow and move it down into > libmdb too. The longer term solution is to use iconv for the > conversion, but I wanted to fix the bug quickly and then have some > time to think about fixing it right. It will be more elegant in the > final version, I think I need to clean up some of the building of temp > table columns too....it's too verbose. Should have it all done by > Monday. > > Please check your patch against the tree, I used the row position > number from the tdef page to get the postion of the null bit instead > of a simple ordering of columns, and I consolidated the building of > the mask between pack_row[3|4] since it's identical. So, please > verify that I didn't screw up the effects of your patch. > > I'm having some problems running "list tables" in odbc which I need to > look at too. > > Brian > > On Fri, 5 Mar 2004 04:58:18 -0800 (PST), Jeff Smith wrote: > > > > > I would like to suggest a parameter change in convert_to_ucs2 > > recently added to src/sql/mdbsql.c. Add an additional > > parameter of int * into which the final size is stored. That > > way, 1. you don't have to calculate it after you return, and > > 2. if logic for convert_to_ucs2 changes, you don't only have > > to update the logic for the string size in one place (high > > cohesion. > > > > -- Jeff S > > |