77 *
88 *
99 * IDENTIFICATION
10- * $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/pgtclCmds.c,v 1.37 1998/10/02 01:37:17 tgl Exp $
10+ * $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/pgtclCmds.c,v 1.38 1998/10/14 15:17:51 tgl Exp $
1111 *
1212 *-------------------------------------------------------------------------
1313 */
@@ -1230,7 +1230,8 @@ Pg_select(ClientData cData, Tcl_Interp * interp, int argc, char **argv)
12301230Pg_ConnectionId * connid ;
12311231PGconn * conn ;
12321232PGresult * result ;
1233- int r ;
1233+ int r ,
1234+ retval ;
12341235size_t tupno ,
12351236column ,
12361237ncols ;
@@ -1293,6 +1294,8 @@ Pg_select(ClientData cData, Tcl_Interp * interp, int argc, char **argv)
12931294sprintf (buffer ,"%d" ,ncols );
12941295Tcl_SetVar2 (interp ,argv [3 ],".numcols" ,buffer ,0 );
12951296
1297+ retval = TCL_OK ;
1298+
12961299for (tupno = 0 ;tupno < PQntuples (result );tupno ++ )
12971300{
12981301sprintf (buffer ,"%d" ,tupno );
@@ -1306,10 +1309,7 @@ Pg_select(ClientData cData, Tcl_Interp * interp, int argc, char **argv)
13061309if ((r = Tcl_Eval (interp ,argv [4 ]))!= TCL_OK && r != TCL_CONTINUE )
13071310{
13081311if (r == TCL_BREAK )
1309- {
1310- PQclear (result );
1311- return TCL_OK ;
1312- }
1312+ break ;/* exit loop, but return TCL_OK */
13131313
13141314if (r == TCL_ERROR )
13151315{
@@ -1320,15 +1320,15 @@ Pg_select(ClientData cData, Tcl_Interp * interp, int argc, char **argv)
13201320Tcl_AddErrorInfo (interp ,msg );
13211321}
13221322
1323- PQclear ( result ) ;
1324- return r ;
1323+ retval = r ;
1324+ break ;
13251325}
13261326}
13271327
13281328ckfree ((void * )info );
13291329Tcl_UnsetVar (interp ,argv [3 ],0 );
13301330PQclear (result );
1331- return TCL_OK ;
1331+ return retval ;
13321332}
13331333
13341334/*