Ticket UUID: | 813056 | |||
Title: | Tcl_GetIndexFromObjStruct doesn't reset result before error | |||
Type: | Bug | Version: | obsolete: 8.4.5 | |
Submitter: | muonics | Created on: | 2003-09-26 13:26:28 | |
Subsystem: | 13. Index Object | Assigned To: | dgp | |
Priority: | 5 Medium | Severity: | ||
Status: | Closed | Last Modified: | 2006-03-25 10:22:11 | |
Resolution: | Fixed | Closed By: | sf-robot | |
Closed on: | 2006-03-25 03:22:11 | |||
Description: |
Tcl_GetIndexFromObjStruct doesn't reset prior result information in the interpreter when generating its so-called (in the comments) "fancy error message". This means that if you've done something that has set a result before calling it or Tcl_GetIndexFromObj (including calling Tcl_GetIndexFromObj multiple times with multiple errors) you get bogus error messages. In the particular case I noticed this, I have an ObjCmd that separates out certain option arguments that it wants and delegates the remaining options to another ObjCmd. Here I use the TCL_ERROR vs. TCL_OK result to determine whether an option was matched within the set that the first function wants. It's a little more maintainable this way (though perhaps slower with all those error messages being generated) to have the first function only know about the small subset of options that it wants. At any rate, I noticed that when feeding the command a bunch of options where one wasn't recognized by either generated an error message with repeated error messages and other result bits. See below for suggested patch. | |||
User Comments: |
sf-robot added on 2006-03-25 10:22:11:
Logged In: YES user_id=1312539 This Tracker item was closed automatically by the system. It was previously set to a Pending status, and the original submitter did not respond within 14 days (the time period specified by the administrator of this Tracker). dgp added on 2006-03-10 22:49:47: Logged In: YES user_id=80530 the specifc bug reported has been fixed, and I believe the general issue has been corrected too. See 2004-10-06 ChangeLog entry. dgp added on 2006-03-10 13:49:47: Logged In: YES user_id=80530 Is this report still valid? muonics added on 2003-09-26 20:56:37: Logged In: YES user_id=498198 Seems to be more of a pandemic issue than just this function. See bug #533364. Just thought I should note it for reference (maybe someone wants to mark this as a duplicate or make a single bug entry for fixing this on a global scale). muonics added on 2003-09-26 20:26:28: File Added - 62611: tclIndexObj.c.diff |
Attachments:
- tclIndexObj.c.diff [download] added by muonics on 2003-09-26 20:26:28. [details]