summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-12-17 13:57:46 +0000
committerCaolán McNamara <caolanm@redhat.com>2017-12-17 21:21:32 +0100
commit0fac5362af090a40d1710d7414120835f154d8d1 (patch)
treeab139bf621d558b6e512b77cee5c81e40b19863d /vcl
parent0e0936da291efaaf501b510882042581efc30e20 (diff)
ofz#4678 ensure null termination
Change-Id: I6b6b0763e85a41d03f9e03c6abc17c6c311f6519 Reviewed-on: https://gerrit.libreoffice.org/46641 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/gdi/jobset.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/vcl/source/gdi/jobset.cxx b/vcl/source/gdi/jobset.cxx
index cc8712a48615..fe7cbb2936d9 100644
--- a/vcl/source/gdi/jobset.cxx
+++ b/vcl/source/gdi/jobset.cxx
@@ -256,7 +256,9 @@ SvStream& ReadJobSetup( SvStream& rIStream, JobSetup& rJobSetup )
ImplJobSetup& rJobData = rJobSetup.ImplGetData();
+ pData->cPrinterName[SAL_N_ELEMENTS(pData->cPrinterName) - 1] = 0;
rJobData.SetPrinterName( OStringToOUString(pData->cPrinterName, aStreamEncoding) );
+ pData->cDriverName[SAL_N_ELEMENTS(pData->cDriverName) - 1] = 0;
rJobData.SetDriver( OStringToOUString(pData->cDriverName, aStreamEncoding) );
// Are these our new JobSetup files?
@@ -345,9 +347,9 @@ SvStream& WriteJobSetup( SvStream& rOStream, const JobSetup& rJobSetup )
ImplOldJobSetupData aOldData;
memset( &aOldData, 0, sizeof( aOldData ) );
OString aPrnByteName(OUStringToOString(rJobData.GetPrinterName(), RTL_TEXTENCODING_UTF8));
- strncpy( aOldData.cPrinterName, aPrnByteName.getStr(), 63 );
+ strncpy(aOldData.cPrinterName, aPrnByteName.getStr(), SAL_N_ELEMENTS(aOldData.cPrinterName) - 1);
OString aDriverByteName(OUStringToOString(rJobData.GetDriver(), RTL_TEXTENCODING_UTF8));
- strncpy( aOldData.cDriverName, aDriverByteName.getStr(), 31 );
+ strncpy(aOldData.cDriverName, aDriverByteName.getStr(), SAL_N_ELEMENTS(aOldData.cDriverName) - 1);
int nPos = rOStream.Tell();
rOStream.WriteUInt16( 0 );
rOStream.WriteUInt16( JOBSET_FILE605_SYSTEM );