This makes it clear whether a transaction successfully completed and
allows log parsers to group related actions.

Signed-off-by: Andrew Gregory <[email protected]>
---
 lib/libalpm/trans.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/lib/libalpm/trans.c b/lib/libalpm/trans.c
index e5328c5..fcf2fb7 100644
--- a/lib/libalpm/trans.c
+++ b/lib/libalpm/trans.c
@@ -177,18 +177,28 @@ int SYMEXPORT alpm_trans_commit(alpm_handle_t *handle, 
alpm_list_t **data)
 
        trans->state = STATE_COMMITING;
 
+       alpm_logaction(handle, ALPM_CALLER_PREFIX, "transaction started\n");
+
        if(trans->add == NULL) {
                if(_alpm_remove_packages(handle, 1) == -1) {
                        /* pm_errno is set by _alpm_remove_packages() */
+                       alpm_logaction(handle, ALPM_CALLER_PREFIX, "transaction 
failed\n");
                        return -1;
                }
        } else {
                if(_alpm_sync_commit(handle, data) == -1) {
                        /* pm_errno is set by _alpm_sync_commit() */
+                       alpm_logaction(handle, ALPM_CALLER_PREFIX, "transaction 
failed\n");
                        return -1;
                }
        }
 
+       if(trans->state == STATE_INTERRUPTED) {
+               alpm_logaction(handle, ALPM_CALLER_PREFIX, "transaction 
interrupted\n");
+       } else {
+               alpm_logaction(handle, ALPM_CALLER_PREFIX, "transaction 
completed\n");
+       }
+
        trans->state = STATE_COMMITED;
 
        return 0;
-- 
1.9.1


Reply via email to