diff --git AmberTools/src/leap/src/leap/basics.c AmberTools/src/leap/src/leap/basics.c index 8365eca..8638309 100644 --- AmberTools/src/leap/src/leap/basics.c +++ AmberTools/src/leap/src/leap/basics.c @@ -462,7 +462,7 @@ char *cPBlock; SmPMallocList = mPMem; sTrailer = ((char*)mPMem)+sizeof(MEMHEADER)+lSize; - memcpy( sTrailer, mPMem->sCheck, TRAILERLEN ); + memmove( sTrailer, mPMem->sCheck, TRAILERLEN ); return ((char*)mPMem) + sizeof(MEMHEADER); } @@ -528,7 +528,7 @@ char *sTrailer; if ( mPMem == NULL ) { DFATAL(( "Could not malloc in REALLOC: %s\n", strerror(errno) )); } - memcpy( mPMem, mPPrevious, + memmove( mPMem, mPPrevious, MIN( lSize, mPPrevious->lSize) + sizeof(MEMHEADER)+TRAILERLEN ); strcpy( mPPrevious->sCheck, FREESTR ); @@ -540,7 +540,8 @@ char *sTrailer; /* Fill the trailer */ sTrailer = ((char*)mPMem)+sizeof(MEMHEADER)+lSize; - strcpy( sTrailer, mPMem->sCheck ); + memmove( sTrailer, mPMem->sCheck, strlen(mPMem->sCheck) ); + sTrailer[strlen(mPMem->sCheck)]='\0'; return ((char*)mPMem) + sizeof(MEMHEADER); } diff --git AmberTools/src/leap/src/leap/database.c AmberTools/src/leap/src/leap/database.c index e94b7a4..24bdb58 100644 --- AmberTools/src/leap/src/leap/database.c +++ AmberTools/src/leap/src/leap/database.c @@ -594,6 +594,7 @@ static char * sStripString( char *sLine, char *sStr ) { char c, *sCur, *sStart; +int mylength; sCur = sLine; sStart = sStr; @@ -615,8 +616,10 @@ char c, *sCur, *sStart; (*sStr++) = c; } while ( (*sCur) != '\0' ); *sStr = '\0'; - strcpy( sLine, sCur ); - + mylength=strlen(sCur); + //strcpy( sLine, sCur ); + memmove(sLine, sCur, mylength); + sLine[mylength]='\0'; return(sStart); } diff --git AmberTools/src/leap/src/leap/sort.c AmberTools/src/leap/src/leap/sort.c index c793a2e..6ae9d0e 100644 --- AmberTools/src/leap/src/leap/sort.c +++ AmberTools/src/leap/src/leap/sort.c @@ -217,9 +217,9 @@ int iTopTrue, iBottomFalse; /* If false then swap it with the bottom of the false */ /* group, and leave the current pointer where it is */ - memcpy( PSwapBuffer, PCur, iElementSize ); - memcpy( PCur, PTop, iElementSize ); - memcpy( PTop, PSwapBuffer, iElementSize ); + memmove( PSwapBuffer, PCur, iElementSize ); + memmove( PCur, PTop, iElementSize ); + memmove( PTop, PSwapBuffer, iElementSize ); PTop = (char*)PTop - iElementSize; iBottomFalse--; diff --git AmberTools/src/leap/src/leap/stringExtra.c AmberTools/src/leap/src/leap/stringExtra.c index 7d826e4..baad818 100644 --- AmberTools/src/leap/src/leap/stringExtra.c +++ AmberTools/src/leap/src/leap/stringExtra.c @@ -130,10 +130,13 @@ char * sRemoveLeadingSpaces( char *sLine ) { char *sTemp; - +int mylength; sTemp = sLine; while ( (*sTemp==' ') && ( *sTemp!='\0' )) sTemp++; - strcpy( sLine, sTemp ); + mylength=strlen(sTemp); + //strcpy( sLine, sTemp ); + memmove(sLine, sTemp, mylength); + sLine[mylength]='\0'; return(sLine); } @@ -152,6 +155,7 @@ void sRemoveFirstString( char *sLine, char *sHead ) { char *sTemp; +int mylength; sTemp = sLine; while ( (*sTemp!=' ') && ( *sTemp!='\0' )) sTemp++; @@ -163,7 +167,11 @@ char *sTemp; *sTemp = '\0'; strcpy( sHead, sLine ); sTemp++; - strcpy( sLine, sTemp ); + mylength=strlen(sTemp); + //strcpy( sLine, sTemp ); + memmove(sLine, sTemp, mylength); + sLine[mylength]='\0'; + } diff --git AmberTools/src/leap/src/leap/xaCommand.c AmberTools/src/leap/src/leap/xaCommand.c index dfd8f36..afed496 100644 --- AmberTools/src/leap/src/leap/xaCommand.c +++ AmberTools/src/leap/src/leap/xaCommand.c @@ -837,7 +837,7 @@ STRING sName; * at the top of the list */ qsort( saPNames, iNumber, sizeof(STRING), - (int (*) (void *, void *) )ziXACCompareTwoDirectoryEntries ); + (int (*) (const void *, const void *) )ziXACCompareTwoDirectoryEntries ); /* * Reformulate as an array of pointers to char