Skip to content
  • Luiz Capitulino's avatar
    monitor: QError support · 8204a918
    Luiz Capitulino authored
    
    
    This commit adds QError support in the Monitor.
    
    A QError member is added to the Monitor struct. This new member
    stores error information and is also used to check if an error
    has occurred when the called handler returns.
    
    Additionally, a new macro called qemu_error_new() is introduced.
    It builds on top of the QemuErrorSink API and should be used in
    place of qemu_error().
    
    When all conversion to qemu_error_new() is done, qemu_error() can
    be turned private.
    
    Basically, Monitor's error flow is something like this:
    
    1. An error occurs in the handler, it calls qemu_error_new()
    2. qemu_error_new() builds a new QError object and stores it in
       the Monitor struct
    3. The handler returns
    4. Top level Monitor code checks the Monitor struct and calls
       qerror_print() to print the error
    
    Signed-off-by: default avatarLuiz Capitulino <lcapitulino@redhat.com>
    Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
    8204a918