几何尺寸与公差论坛

 找回密码
 注册
查看: 89|回复: 1

PR 245636 Pressing F9 and then cancel changes UID of command

[复制链接]
发表于 2009-3-1 22:58:48 | 显示全部楼层 |阅读模式
<< Bret Naylor  --  12/13/06  15:33:34>>
If a user presses F9 on some commands and then presses cancel, the UID of the command is changed.

Steps to reproduce:
1.  Create a new part program and add a constructed best fit circle to the program
2.  Right click in command mode on the edit window and change the pop-up display type to command information.
3.  Position mouse over command to get the popup.  Note the value of the UID.
4.  Press F9 and then press close.
5.  Position mouse over command to get the popup.  Note the value of the UID.

Results:
The UID number has changed.

Expected Results:
This will cause custom reports and other parts of PC-Dmis which depends on the Unique ID staying the same to break.

The UID should stay the same.

I recommend that we add a funciton at the command.h level to switch the UID of two commands (in this case the original command and the copy of that command).
<<END>>
 楼主| 发表于 2009-3-1 22:59:02 | 显示全部楼层

回复: PR 245636 Pressing F9 and then cancel changes UID of command

<< Changes made by Neil Kay -- 02/24/09  14:31:06>>
Status:  RESOLVED to CLOSED
<<END>>

<< David Petrizze  --  12/18/06  17:23:58>>
Okay, this should work a lot better than my previous 'fix'.

******************************
Mon Dec 18 17:23:00 2006
******************************

Files inserted to server
------------------------
V42\INCLUDE\COMMAND.H
V42\SOURCE\COMMAND.CPP
V42\SOURCE\GLOBALS.CPP
V42R\INCLUDE\COMMAND.H
V42R\SOURCE\COMMAND.CPP
V42R\SOURCE\GLOBALS.CPP
V43B\INCLUDE\COMMAND.H
V43B\SOURCE\COMMAND.CPP
V43B\SOURCE\GLOBALS.CPP
<<END>>

<< Changes made by David Petrizze -- 12/18/06  17:24:27>>
Action:  David Petrizze to Bret Naylor, Status:  OPEN to RESOLVED
<<END>>

<< Don Turcotte  --  12/15/06  14:38:15>>
The crash is occuring when a constrained datum is deleted.  This is a duplicate of an autofeature.  This constrained datum feature is not part of the main linked list.
<<END>>

<< Don Turcotte  --  12/15/06  14:36:43>>
Ap crashes if you F9 on an FCF in the attached program.  The call stack is

> PCDLRN.exe!CPCDcommand::get_UID()  Line 7070 + 0x9 C++
  PCDLRN.exe!CPCDcommand::GetKey(int __formal=0x00000000)  Line 1028 C++
  PCDLRN.exe!CTemplateBtree<CPCDcommand *,unsigned __int64>::get_node(unsigned __int64 key=0x0000000000000f0a)  Line 294 + 0x16 C++
  PCDLRN.exe!CTemplateBtree<CPCDcommand *,unsigned __int64>::get_node(unsigned __int64 key=0x0000000000000f0a)  Line 298 + 0x17 C++
  PCDLRN.exe!CTemplateBtree<CPCDcommand *,unsigned __int64>::get_node(unsigned __int64 key=0x0000000000000f0a)  Line 298 + 0x17 C++
  PCDLRN.exe!CPCDcommand::CUnique64::RemoveFromTree(CPCDcommand * OuterThis=0x154f79d8)  Line 190 + 0x1e C++
  PCDLRN.exe!CPCDcommand::~CPCDcommand()  Line 423 C++
  PCDLRN.exe!CPCDbasic_hit::~CPCDbasic_hit()  Line 155 + 0x7b C++
  PCDLRN.exe!CPCDbasic_hit::`scalar deleting destructor'()  + 0x16 C++
  PCDLRN.exe!CPCDbasic_feature::remove_hits(CPCDcommand * hit_ptr=0x1c2d6e88)  Line 2374 + 0x21 C++
  PCDLRN.exe!CPCDAFPlaneContact::~CPCDAFPlaneContact()  Line 58 + 0x12 C++
  PCDLRN.exe!CPCDAFPlaneContact::`scalar deleting destructor'()  + 0x16 C++
  PCDLRN.exe!CPCDtp_start_location::delete_duplicate(CPCDcommand * datum=0x154f3908)  Line 6270 + 0x21 C++
  PCDLRN.exe!CPCDtp_start_location::~CPCDtp_start_location()  Line 260 C++
  PCDLRN.exe!CPCDtp_start_location::`scalar deleting destructor'()  + 0x16 C++
  PCDLRN.exe!CPCDFeatCtrlFrm::delete_internal_commands()  Line 11314 + 0x21 C++
  PCDLRN.exe!CPCDFeatCtrlFrm::update_internal_commands(int bDeleteAxesLists=0x00000000)  Line 10070 C++
  PCDLRN.exe!CPCDFeatCtrlFrm::SetAxesList(CArray<AXIS_INFO,AXIS_INFO> & array={...}, int bUpdateFeatureNoms=0x00000001, int index=0x00000000, int enforceSameAxes=0x00000000, int bUpdateInternalCommands=0x00000001)  Line 19908 C++
  PCDLRN.exe!CFeatCtrlFrmOutputDlg::ApplyDialogSettingsToFCF(CPCDFeatCtrlFrm * fcf=0x154f2398)  Line 281 C++
  PCDLRN.exe!CFeatCtrlFrmOutputDlg::OnKillActive()  Line 588 C++

<<END>>

<< David Petrizze  --  12/15/06  09:46:49>>
Having to open this back up due to other problems caused by having matching UIDs across multiple CPCDcommand objects.
<<END>>

<< Changes made by David Petrizze -- 12/15/06  09:46:56>>
Action:  Troy Johnson to David Petrizze, Status:  REVIEW to OPEN
<<END>>

<< David Petrizze  --  12/14/06  12:26:02>>
Fixed:

For review:
******************************
Thu Dec 14 12:25:41 2006
******************************

Files inserted to server
------------------------
V42\INCLUDE\COMMAND.H
V42\SOURCE\COMMAND.CPP
V42R\INCLUDE\COMMAND.H
V42R\SOURCE\COMMAND.CPP
V43B\INCLUDE\COMMAND.H
V43B\SOURCE\COMMAND.CPP
<<END>>

<< Changes made by David Petrizze -- 12/14/06  12:26:14>>
Action:  David Petrizze to Troy Johnson, Status:  OPEN to REVIEW
<<END>>
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|几何尺寸与公差论坛

GMT+8, 2024-12-23 00:15 , Processed in 0.039102 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表