This is the mail archive of the
frysk@sources.redhat.com
mailing list for the frysk project.
Refactored TaskObserver.Code
- From: Mark Wielaard <mark at klomp dot org>
- To: frysk at sourceware dot org
- Date: Thu, 21 Sep 2006 18:53:02 +0200
- Subject: Refactored TaskObserver.Code
Hi,
While writing faddr (a utility to easily set lots of breakpoints on a
process, more on that later) I noticed that the setup of Code
TaskObservers isn't very nice if you want to set lots of similar
observers. This patch refactors the Code observer so that the actual
address on which it is watching is always passed as argument to the task
request and when updateHit() is called. That way you can set the same
observer on a group of related addresses.
2006-09-21 Mark Wielaard <mark@klomp.org>
* BreakpointAddresses.java (addBreakpoint): Take address as
argument.
(removeBreakpoint): Likewise.
* PendingCodeObserver.java (address): New field.
* Proc.java (requestAddCodeObserver): Take address as argument.
(requestDeleteCodeObserver): Likewise.
* Task.java (handleAddCodeObserver): Likewise.
(handleDeleteCodeObserver): Likewise.
(requestAddCodeObserver): Likewise.
(requestDeleteCodeObserver): Likewise.
* TaskCodeObservation (address): New field.
(TaskCodeObservation): Take address as argument.
(handleAdd): Pass on address.
(handleDelete): Likewise.
* TaskObserver.java (Code.getAddress): Removed method.
(updateHit): Take address as argument.
* TaskState (*.handleAddCodeObserver): Handle address as argument.
(*.handleDeleteCodeObserver): Likewise.
* TestBreakpoints.java: Update test to pass address as argument.
Test cases updated and no regressions (x86_64).
Committed,
Mark