diff options
| author | Tiejun Zhou <[email protected]> | 2022-10-26 23:41:13 +0000 |
|---|---|---|
| committer | Tiejun Zhou <[email protected]> | 2022-10-26 23:41:13 +0000 |
| commit | 3e8e85cdc1e51f9de577457377a4f9a4f6b9b82f (patch) | |
| tree | 861c0ab74e5dc5de7509b4b85f5e75dd74457117 /common/src/tx_event_flags_get.c | |
| parent | b871c33620f9b58a83e92a33f4ca00025e850c7f (diff) | |
Release 6.2.0v6.2.0_rel
Diffstat (limited to 'common/src/tx_event_flags_get.c')
| -rw-r--r-- | common/src/tx_event_flags_get.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/common/src/tx_event_flags_get.c b/common/src/tx_event_flags_get.c index aba42c6b..3cc62178 100644 --- a/common/src/tx_event_flags_get.c +++ b/common/src/tx_event_flags_get.c @@ -36,7 +36,7 @@ /* FUNCTION RELEASE */ /* */ /* _tx_event_flags_get PORTABLE C */ -/* 6.1.11 */ +/* 6.2.0 */ /* AUTHOR */ /* */ /* William E. Lamie, Microsoft Corporation */ @@ -79,6 +79,9 @@ /* 04-25-2022 Scott Larson Modified comment(s), */ /* handle 0 flags case, */ /* resulting in version 6.1.11 */ +/* 10-31-2022 Scott Larson Modified comment(s), always */ +/* return actual flags, */ +/* resulting in version 6.2.0 */ /* */ /**************************************************************************/ UINT _tx_event_flags_get(TX_EVENT_FLAGS_GROUP *group_ptr, ULONG requested_flags, @@ -125,6 +128,9 @@ UINT interrupted_set_request; /* Pickup current flags. */ current_flags = group_ptr -> tx_event_flags_group_current; + /* Return the actual event flags and apply delayed clearing. */ + *actual_flags_ptr = current_flags & ~group_ptr -> tx_event_flags_group_delayed_clear; + /* Apply the event flag option mask. */ and_request = (get_option & TX_AND); @@ -158,9 +164,6 @@ UINT interrupted_set_request; if (flags_satisfied != ((ULONG) 0)) { - /* Return the actual event flags that satisfied the request. */ - *actual_flags_ptr = current_flags; - /* Pickup the clear bit. */ clear_request = (get_option & TX_EVENT_FLAGS_CLEAR_MASK); @@ -221,9 +224,6 @@ UINT interrupted_set_request; /* Yes, this request can be handled immediately. */ - /* Return the actual event flags that satisfied the request. */ - *actual_flags_ptr = current_flags; - /* Pickup the clear bit. */ clear_request = (get_option & TX_EVENT_FLAGS_CLEAR_MASK); @@ -274,7 +274,7 @@ UINT interrupted_set_request; #endif else { - + /* flags_satisfied is 0. */ /* Determine if the request specifies suspension. */ if (wait_option != TX_NO_WAIT) { |
