laptop and a wrench

漏洞

Select does not return in ArcObjects Visual C++ Console app in the IFeatureClass interface.

上次发布: July 1, 2019 ArcGIS for Desktop
漏洞 ID 编号 BUG-000122766
已提交May 31, 2019
上次修改时间June 5, 2024
适用范围ArcGIS for Desktop
找到的版本10.2.1
状态Will Not Be Addressed

附加信息

The users code has a flaw in it, when exactly one geometry is returned (for example, no union). They are using a geometry from a recycling cursor after the cursor has been freed. The geometry’s memory is free, and in their code, some of the free memory is used in a way that causes the geometry’s spatial indexed to exhaust memory. In other cases, the freed memory is not manipulated in a way that causes the spatial index to react as it does in this case. This gives the distinctive “only in this application” behavior (although other memory configurations could yield other bad results).

解决办法

The solution is to either use a non-recycling cursor, call get_ShapeCopy, or clone the shape in the case that they never union geometries. The non-recycling cursors causes the application to overall use more memory, same with get_shapeCopy. However the third option has the least impact to their existing code. To clone the shape in the case they detect that the union is not required, avoids the flaw in the coding pattern.

重现步骤

漏洞 ID: BUG-000122766

软件:

  • ArcGIS for Desktop

当漏洞状态发生变化时获得通知

下载 Esri 支持应用程序

发现关于本主题的更多内容

获取来自 ArcGIS 专家的帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项