Changeset: 3d1e680be2d9 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3d1e680be2d9
Modified Files:
        clients/R/MonetDB.R/DESCRIPTION
        clients/R/MonetDB.R/NEWS
        clients/R/MonetDB.R/src/mapisplit-r.c
Branch: default
Log Message:

R Connector: Fix crash on Windows (...)


diffs (48 lines):

diff --git a/clients/R/MonetDB.R/DESCRIPTION b/clients/R/MonetDB.R/DESCRIPTION
--- a/clients/R/MonetDB.R/DESCRIPTION
+++ b/clients/R/MonetDB.R/DESCRIPTION
@@ -1,5 +1,5 @@
 Package: MonetDB.R
-Version: 0.9.6
+Version: 0.9.7
 Title: Connect MonetDB to R
 Authors@R: c(person("Hannes Muehleisen", role = c("aut", "cre"),email = 
"han...@cwi.nl"),
        person("Thomas Lumley", role = "ctb"),
diff --git a/clients/R/MonetDB.R/NEWS b/clients/R/MonetDB.R/NEWS
--- a/clients/R/MonetDB.R/NEWS
+++ b/clients/R/MonetDB.R/NEWS
@@ -1,3 +1,6 @@
+0.9.7
+- Fixed crash on Windows (Sorry, everyone)
+
 0.9.6
 - monetdb.read.csv new create= parameter (Thanks, Duncan)
 - deprecated nrows parameter to monetdb.read.csv, not neccessary any more 
because of changes to MonetDB
diff --git a/clients/R/MonetDB.R/src/mapisplit-r.c 
b/clients/R/MonetDB.R/src/mapisplit-r.c
--- a/clients/R/MonetDB.R/src/mapisplit-r.c
+++ b/clients/R/MonetDB.R/src/mapisplit-r.c
@@ -1,19 +1,17 @@
 #include <assert.h>
-
 #include <R.h>
 #include <Rdefines.h>
-
-void mapi_line_split(char* line, char** out, size_t ncols);
+#include "mapisplit.h"
 
 char nullstr[] = "NULL";
+
 SEXP mapi_split(SEXP mapiLinesVector, SEXP numCols) {
-       assert(TYPEOF(mapiLinesVector) == CHARSXP);
-
        int cols = INTEGER_POINTER(AS_INTEGER(numCols))[0];
        int rows = LENGTH(mapiLinesVector);
 
-       assert(rows > 0);
-       assert(cols > 0);
+       if (!IS_CHARACTER(mapiLinesVector) || rows < 1 || cols < 1) {
+               error("Invalid input to mapi_split: type=%d, rows=%d, cols=%d", 
TYPEOF(mapiLinesVector), rows, cols);
+       }
 
        SEXP colVec;
        PROTECT(colVec = NEW_LIST(cols));
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to