void tracepoint(unsigned short func, int flag)
{
+ int breakpoint;
+
receive();
- if((breakpoints[func]|break_any)&flag)
+ breakpoint = (breakpoints[func]|break_any)&flag;
+ if(breakpoint || hold)
{
GlPacket *pkt;
- pkt = packet_begin(FUNC_GLDBREAK);
- packet_write_short(pkt, func);
- packet_send(pkt, get_out_fd());
+ if(breakpoint)
+ {
+ pkt = packet_begin(FUNC_GLDBREAK);
+ packet_write_short(pkt, func);
+ packet_write_char(pkt, flag);
+ packet_send(pkt, get_out_fd());
+ }
break_any = 0;