| 1104 | } |
| 1105 | |
| 1106 | static bool activation_path_matches(const cbm_activation_transaction_t *transaction, |
| 1107 | const char *path, const char *name, |
| 1108 | const activation_file_identity_t *expected, bool *exists_out) { |
| 1109 | activation_file_identity_t actual; |
| 1110 | bool exists = false; |
| 1111 | if (!activation_entry_snapshot(transaction, path, name, &exists, &actual)) { |
| 1112 | return false; |
| 1113 | } |
| 1114 | *exists_out = exists; |
| 1115 | return !exists || activation_identity_equal(&actual, expected); |
| 1116 | } |
| 1117 | |
| 1118 | static bool activation_sync_directory(const cbm_activation_transaction_t *transaction) { |
| 1119 | #ifdef _WIN32 |
no test coverage detected