From 142df850b072b0a7af409e7d2c4772eba31d9058 Mon Sep 17 00:00:00 2001 From: Frank Morgner Date: Thu, 29 May 2014 20:44:03 +0200 Subject: [PATCH] fixed missing delimiter for reader array --- virtualsmartcard/src/pcsclite-vpcd/winscard.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/virtualsmartcard/src/pcsclite-vpcd/winscard.c b/virtualsmartcard/src/pcsclite-vpcd/winscard.c index 8776d44..bd91697 100644 --- a/virtualsmartcard/src/pcsclite-vpcd/winscard.c +++ b/virtualsmartcard/src/pcsclite-vpcd/winscard.c @@ -541,7 +541,7 @@ PCSC_API LONG SCardListReaders(SCARDCONTEXT hContext, LPCSTR mszGroups, LPSTR ms SET_R_TEST( autoallocate(mszReaders, pcchReaders, - (MAX_READERNAME+1)*PCSCLITE_MAX_READERS_CONTEXTS, + (MAX_READERNAME+1)*PCSCLITE_MAX_READERS_CONTEXTS+1, (void **) &readers)); @@ -560,6 +560,12 @@ PCSC_API LONG SCardListReaders(SCARDCONTEXT hContext, LPCSTR mszGroups, LPSTR ms readerslen++; } + /* write a null character as final delimiter */ + if (readers) { + readers[readerslen] = '\0'; + } + readerslen++; + *pcchReaders = readerslen; if (!readerslen) {