From 4d7376a96afa365371c33a2fa7f814e9d81fad9f Mon Sep 17 00:00:00 2001 From: malaterre Date: Tue, 16 Nov 2004 16:49:01 +0000 Subject: [PATCH] BUG: Some compilers complain when isdigit/isalpha/isprint are being passed in a char (therefore it could be negative). Thanks to Jean Michel for patch --- src/gdcmDocument.cxx | 8 ++++---- src/gdcmHeader.cxx | 6 +++--- src/gdcmUtil.cxx | 18 +++++++++--------- src/gdcmValEntry.cxx | 10 +++++----- 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/gdcmDocument.cxx b/src/gdcmDocument.cxx index ea6ee6e7..7e5860cc 100644 --- a/src/gdcmDocument.cxx +++ b/src/gdcmDocument.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDocument.cxx,v $ Language: C++ - Date: $Date: 2004/11/16 16:20:23 $ - Version: $Revision: 1.129 $ + Date: $Date: 2004/11/16 16:49:01 $ + Version: $Revision: 1.130 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -316,7 +316,7 @@ TransferSyntaxType Document::GetTransferSyntax() // for brain damaged headers return UnknownTS; } - while ( !isdigit(transfer[transfer.length()-1]) ) + while ( !isdigit((unsigned char)transfer[transfer.length()-1]) ) { transfer.erase(transfer.length()-1, 1); } @@ -1921,7 +1921,7 @@ bool Document::CheckDocEntryVR(DocEntry *entry, VRKey vr) // expected VR read happens to be non-ascii characters we consider // we hit falsely explicit VR tag. - if ( !isalpha(vr[0]) && !isalpha(vr[1]) ) + if ( !isalpha((unsigned char)vr[0]) && !isalpha((unsigned char)vr[1]) ) { realExplicit = false; } diff --git a/src/gdcmHeader.cxx b/src/gdcmHeader.cxx index a950ddbb..002c20ff 100644 --- a/src/gdcmHeader.cxx +++ b/src/gdcmHeader.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmHeader.cxx,v $ Language: C++ - Date: $Date: 2004/11/16 05:03:35 $ - Version: $Revision: 1.201 $ + Date: $Date: 2004/11/16 16:49:01 $ + Version: $Revision: 1.202 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -1151,7 +1151,7 @@ std::string Header::GetTransfertSyntaxName() return "Uncompressed ACR-NEMA"; } - while ( ! isdigit(transfertSyntax[transfertSyntax.length()-1]) ) + while ( ! isdigit((unsigned char)transfertSyntax[transfertSyntax.length()-1]) ) { transfertSyntax.erase(transfertSyntax.length()-1, 1); } diff --git a/src/gdcmUtil.cxx b/src/gdcmUtil.cxx index edaee708..44b894d4 100644 --- a/src/gdcmUtil.cxx +++ b/src/gdcmUtil.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmUtil.cxx,v $ Language: C++ - Date: $Date: 2004/11/16 10:37:54 $ - Version: $Revision: 1.66 $ + Date: $Date: 2004/11/16 16:49:01 $ + Version: $Revision: 1.67 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -118,21 +118,21 @@ std::string Util::CreateCleanString(std::string const & s) { std::string str = s; - for(unsigned int i=0;i0) + if(str.size() > 0) { - if(!isprint(s[str.size()-1])) + if(!isprint((unsigned char)s[str.size()-1])) { - if(s[str.size()-1]==0) + if(s[str.size()-1] == 0) { - str[str.size()-1]=' '; + str[str.size()-1] = ' '; } } } diff --git a/src/gdcmValEntry.cxx b/src/gdcmValEntry.cxx index b9823c2c..8781df1e 100644 --- a/src/gdcmValEntry.cxx +++ b/src/gdcmValEntry.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmValEntry.cxx,v $ Language: C++ - Date: $Date: 2004/11/10 15:54:45 $ - Version: $Revision: 1.35 $ + Date: $Date: 2004/11/16 16:49:01 $ + Version: $Revision: 1.36 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -108,7 +108,7 @@ void ValEntry::Print(std::ostream & os) { if ( v.length() != 0 ) // for brain damaged headers { - if ( ! isdigit(v[v.length()-1]) ) + if ( ! isdigit((unsigned char)v[v.length()-1]) ) { v.erase(v.length()-1, 1); } @@ -124,7 +124,7 @@ void ValEntry::Print(std::ostream & os) { if ( v.length() != 0 ) // for brain damaged headers { - if ( ! isdigit(v[v.length()-1]) ) + if ( ! isdigit((unsigned char)v[v.length()-1]) ) { v.erase(v.length()-1, 1); } @@ -140,7 +140,7 @@ void ValEntry::Print(std::ostream & os) { if ( v.length() != 0 ) // for brain damaged headers { - if ( ! isdigit(v[v.length()-1]) ) + if ( ! isdigit((unsigned char)v[v.length()-1]) ) { v.erase(v.length()-1, 1); } -- 2.48.1