This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] detaching and threaded linux apps


On Mon, Jun 03, 2002 at 11:53:03PM +0200, Mark Kettenis wrote:
> 
> The fact that thread_db_detach and lin_lwp_detach don't unpush their
> targect vector is intentional.  The target vector is installed as a
> result of loading the thread library, not (necessarily) as a result of
> attaching to a threaded application.  Therefore is should only be
> uninstalled if the thread library is unloaded.  The right wat of
> fixing this would be to prevent the assertion being triggered if
> num_lwps == 0.  Explicitly checking for this condition and displaying
> an error message in lin_lwp_detach() might be sufficient.

Ok. I see exactly what's going on now. Returning from lin_lwp_detach
when there are no lwps works as expected. I don't think that displaying
an error message is neccessary - the behaviour of detach remains
consistent.

Liam

-- 
Liam Stewart :: Red Hat Canada, Ltd. :: liams@redhat.com

2002-06-04  Liam Stewart  <liams@redhat.com>

	* lin-lwp.c (lin_lwp_detach): Don't attempt to detach if there
	* are no lwps.


Index: lin-lwp.c
===================================================================
RCS file: /cvs/src/src/gdb/lin-lwp.c,v
retrieving revision 1.34
diff -c -p -r1.34 lin-lwp.c
*** lin-lwp.c	31 Mar 2002 15:10:38 -0000	1.34
--- lin-lwp.c	4 Jun 2002 15:32:03 -0000
*************** detach_callback (struct lwp_info *lp, vo
*** 482,487 ****
--- 482,490 ----
  static void
  lin_lwp_detach (char *args, int from_tty)
  {
+   if (num_lwps == 0)
+     return;
+ 
    iterate_over_lwps (detach_callback, NULL);
  
    /* Only the initial process should be left right now.  */


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]