Commit f6f13c68 by bkerbl

Avoid integer overflow

parent fc0cfe90
...@@ -234,7 +234,7 @@ int CudaRasterizer::Rasterizer::forward( ...@@ -234,7 +234,7 @@ int CudaRasterizer::Rasterizer::forward(
dim3 block(BLOCK_X, BLOCK_Y, 1); dim3 block(BLOCK_X, BLOCK_Y, 1);
// Dynamically resize image-based auxiliary buffers during training // Dynamically resize image-based auxiliary buffers during training
int img_chunk_size = required<ImageState>(width * height); size_t img_chunk_size = required<ImageState>(width * height);
char* img_chunkptr = imageBuffer(img_chunk_size); char* img_chunkptr = imageBuffer(img_chunk_size);
ImageState imgState = ImageState::fromChunk(img_chunkptr, width * height); ImageState imgState = ImageState::fromChunk(img_chunkptr, width * height);
...@@ -280,7 +280,7 @@ int CudaRasterizer::Rasterizer::forward( ...@@ -280,7 +280,7 @@ int CudaRasterizer::Rasterizer::forward(
int num_rendered; int num_rendered;
cudaMemcpy(&num_rendered, geomState.point_offsets + P - 1, sizeof(int), cudaMemcpyDeviceToHost); cudaMemcpy(&num_rendered, geomState.point_offsets + P - 1, sizeof(int), cudaMemcpyDeviceToHost);
int binning_chunk_size = required<BinningState>(num_rendered); size_t binning_chunk_size = required<BinningState>(num_rendered);
char* binning_chunkptr = binningBuffer(binning_chunk_size); char* binning_chunkptr = binningBuffer(binning_chunk_size);
BinningState binningState = BinningState::fromChunk(binning_chunkptr, num_rendered); BinningState binningState = BinningState::fromChunk(binning_chunkptr, num_rendered);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment