提交 4fda9384 authored 作者: Frederic Bastien's avatar Frederic Bastien

fix new commit on variable length array fix for windows.

上级 8576a61d
......@@ -879,12 +879,14 @@ CudaNdarray_TakeFrom(CudaNdarray * self, PyObject *args){
if (! clipmode){
Py_DECREF(indices_obj);
Py_DECREF(out);
free(dims);
return NULL;
}
if (strcmp(clipmode, "raise") != 0) {
PyErr_SetString(PyExc_NotImplementedError,"CudaNdarray_TakeFrom: only the raise mode is currently supported");
Py_DECREF(indices_obj);
Py_DECREF(out);
free(dims);
return NULL;
}
Py_DECREF(clipmode_obj);
......@@ -903,6 +905,7 @@ CudaNdarray_TakeFrom(CudaNdarray * self, PyObject *args){
if (!err_var) { // PyErr set by device_malloc
Py_DECREF(indices_obj);
Py_DECREF(out);
free(dims);
return NULL;
}
cudaError_t err = cudaMemset((void*)err_var, 0, sizeof(int));
......@@ -912,10 +915,11 @@ CudaNdarray_TakeFrom(CudaNdarray * self, PyObject *args){
cudaGetErrorString(err));
Py_DECREF(indices_obj);
Py_DECREF(out);
free(dims);
return NULL;
}
}
free(dims);
dim3 n_blocks(std::min(CudaNdarray_HOST_DIMS(out)[0],65535),1,1);
switch (self->nd) {
case 1:
......@@ -997,7 +1001,8 @@ CudaNdarray_TakeFrom(CudaNdarray * self, PyObject *args){
"CudaNdarray_TakeFrom: only input with 1, 2 or 3"
" dimensions are currently supported");
}
}
free(dims);
CNDA_THREAD_SYNC;
cudaError_t err = cudaGetLastError();
if (cudaSuccess != err) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论