#1866: broken db driver communication in winGRASS 7 ------------------------------+--------------------------------------------- Reporter: martinl | Owner: grass-dev@… Type: defect | Status: new Priority: blocker | Milestone: 7.0.0 Component: Database | Version: unspecified Keywords: sqlite, wingrass | Platform: MSWindows 2K Cpu: Unspecified | ------------------------------+---------------------------------------------
Comment(by mmetz): Replying to [comment:24 glynn]: > Replying to [comment:23 glynn]: > > FWIW, MinGW provides a /lib/binmode.o file for this purpose. Can you try: {{{ make FMODE_OBJ=/lib/binmode.o }}} Not working because this has the effect of making binary-mode file translation the default, except that preopened files stdin, stderr, stdout remain text. The driver pipes are set to stdin and stdout in lib/db/dbmi_driver/driver.c. Anyway, I have added {{{ # if fmode.o causes trouble, try: # FMODE_OBJ=/lib/binmode.o }}} to Grass.make in r55381 as a hint if problems with lib/gis/fmode.c arise. At the same time I have removed the `-lxdr` hack. > Another thing to try is: {{{ #include <io.h> ... _setmode(_fileno(stdin), _O_BINARY); _setmode(_fileno(stdout), _O_BINARY); }}} > I have added that to lib/db/dbmi_driver/driver.c and it works! Submitted in r55382. Do we need to add this globally, i.e. to `gisinit()`? BTW, I think that `lib/dbmi_driver/driver.c` should be in `lib/db/dbmi_client/` for consistency, or IOW there were `lib/dbmi_client/start.c` is. It seems that `lib/dbmi_driver/` should only include db_d_* functions. -- Ticket URL: <https://trac.osgeo.org/grass/ticket/1866#comment:25> GRASS GIS <http://grass.osgeo.org> _______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-dev