This is the mail archive of the frysk@sources.redhat.com mailing list for the frysk 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]

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


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