From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3376 invoked by alias); 28 Jul 2007 14:53:01 -0000 Received: (qmail 3360 invoked by uid 71); 28 Jul 2007 14:53:01 -0000 Resent-Date: 28 Jul 2007 14:53:01 -0000 Resent-Message-ID: <20070728145301.3359.qmail@sourceware.org> Resent-From: insight-gnats@sources.redhat.com (GNATS Filer) Resent-To: nobody@sources.redhat.com Resent-Cc: insight-prs@sources.redhat.com Resent-Reply-To: insight-gnats@sources.redhat.com, bernard.haible@gmx.de Received: (qmail 1300 invoked by uid 48); 28 Jul 2007 14:44:03 -0000 Message-Id: <20070728144403.1299.qmail@sourceware.org> Date: Sat, 28 Jul 2007 14:53:00 -0000 From: bernard.haible@gmx.de Reply-To: bernard.haible@gmx.de To: insight-gnats@sources.redhat.com X-Send-Pr-Version: gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: insight/318: Insight hangs when opening "Target Settings" window Mailing-List: contact insight-prs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: insight-prs-owner@sourceware.org X-SW-Source: 2007-q3/txt/msg00006.txt.bz2 >Number: 318 >Category: insight >Synopsis: Insight hangs when opening "Target Settings" window >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Sat Jul 28 14:53:01 UTC 2007 >Closed-Date: >Last-Modified: >Originator: Bernard Haible >Release: 6.6 >Organization: >Environment: Windows XP Prof. / Cygwin / ASUS P5B-E >Description: Insight hangs when opening the "Target Settings" window. >How-To-Repeat: >Fix: It seems that the problem is located the function itcl::body TargetSelection::port_list in file targetselection.itb. My PC has only one COM port. When searching for COM port 2 to 4, Insight hangs. I changed the search loop as follows, allowing quitting the loop after 1 port instead of 4 in the original code. With that change, it runs fine. for {set i 1} {!$quit} {incr i} { if {[catch { set fd [::open COM$i: RDWR] } msg]} { # Failed. Find out why. if {[string first "permission denied" $msg] != -1} { # Port is there, but busy right now. That's OK. lappend plist /dev/com$i } elseif {$i > 1} { # if we've scanned the first 1 ports, then quit when we find no more set quit 1 } } else { # We got it. Now close it and add to list. close $fd lappend plist /dev/com$i } >Release-Note: >Audit-Trail: >Unformatted: