Differences From Artifact [831193de85]:
- File cackey.c — part of check-in [84aaf35a0e] at 2010-07-23 21:58:27 on branch trunk — Updated to call SCardDisconnect if we detect a previously connected slot -- this fixes a regression in the previous commit where a smartcard would not function after being inserted, removed, and reinserted (user: rkeene, size: 170747) [annotate] [blame] [check-ins using]
To Artifact [8363ed8d3c]:
- File
cackey.c
— part of check-in
[aff9dd7ca3]
at
2010-07-23 22:25:46
on branch trunk
— CACKey 0.5.18
Fixed issue with reset clean-up marking slot as reset (infinite loop) (user: rkeene, size: 170786) [annotate] [blame] [check-ins using] 
| ︙ | ︙ | |||
| 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 | 
		if (cackey_slots[slotID].label != NULL) {
			free(cackey_slots[slotID].label);
			cackey_slots[slotID].label = NULL;
		}
		cackey_mark_slot_reset(&cackey_slots[slotID]);
	}
	if (cackey_sessions[hSession].identities == NULL) {
		cackey_sessions[hSession].identities = cackey_read_identities(&cackey_slots[slotID], &cackey_sessions[hSession].identities_count);
	}
	if (pTemplate != NULL) {
 | > | 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 | 
		if (cackey_slots[slotID].label != NULL) {
			free(cackey_slots[slotID].label);
			cackey_slots[slotID].label = NULL;
		}
		cackey_mark_slot_reset(&cackey_slots[slotID]);
		cackey_slots[slotID].slot_reset = 0;
	}
	if (cackey_sessions[hSession].identities == NULL) {
		cackey_sessions[hSession].identities = cackey_read_identities(&cackey_slots[slotID], &cackey_sessions[hSession].identities_count);
	}
	if (pTemplate != NULL) {
 | 
| ︙ | ︙ |