Date: Tue, 08 Nov 2005 18:33:44 -0800 (PST) From: "Michael C. Shultz" <ringworm01@gmail.com> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/88705: [MAINTAINER UPDATE] sysutils/portmanager to 0.3.3_1 Message-ID: <20051109023344.3F261130C21@ringworm.mechee.com> Resent-Message-ID: <200511090250.jA92oFGR046739@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 88705 >Category: ports >Synopsis: [MAINTAINER UPDATE] sysutils/portmanager to 0.3.3_1 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Wed Nov 09 02:50:15 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Michael C. Shultz >Release: FreeBSD 5.4-STABLE i386 >Organization: >Environment: System: FreeBSD ringworm.mechee.com 5.4-STABLE FreeBSD 5.4-STABLE #0: Fri Nov 4 06:35:37 PST 2005 root@ringworm.mechee.com:/usr5/obj/usr5/src/sys/RINGWORM5 i386 >Description: update sysutils/portmanager to 0.3.3_1 cleaned up valgrind related nits and a few compiler warnings NOTE to comitter: this PR adds patch-0.3.3_1 to /files >How-To-Repeat: N/A >Fix: --- portmanager-0.3.3_1.diff begins here --- diff -ruN portmanager/Makefile portmanager-0.3.3_1/Makefile --- portmanager/Makefile Mon Nov 7 19:15:22 2005 +++ portmanager-0.3.3_1/Makefile Tue Nov 8 16:56:09 2005 @@ -7,6 +7,7 @@ PORTNAME= portmanager PORTVERSION= 0.3.3 +PORTREVISION= 1 CATEGORIES= sysutils MASTER_SITES= http://portmanager.sunsite.dk/distfiles/ \ ${MASTER_SITE_SOURCEFORGE} diff -ruN portmanager/files/patch-0.3.3_1 portmanager-0.3.3_1/files/patch-0.3.3_1 --- portmanager/files/patch-0.3.3_1 Wed Dec 31 16:00:00 1969 +++ portmanager-0.3.3_1/files/patch-0.3.3_1 Tue Nov 8 16:54:34 2005 @@ -0,0 +1,877 @@ +diff -ruN ../0.3.3/libMG/src/MGdbDelete.c ./libMG/src/MGdbDelete.c +--- ../0.3.3/libMG/src/MGdbDelete.c Sat Nov 5 05:43:08 2005 ++++ ./libMG/src/MGdbDelete.c Tue Nov 8 11:38:35 2005 +@@ -23,18 +23,19 @@ + #include <libMG.h> + #include <libMG.ph> + +-int MGdbDelete( classDb* db, int recordIdx ) ++classDb* MGdbDelete( classDb* db, int recordIdx ) + { + FILE* dbFileStream; + char id[] = "MGdbDelete"; + static char* newPath = NULL; + int stringSize = 0; ++ static classDb* newDb; + + /* check if we have a valid object */ + if(db == NULL || db->parent.type != CLASS_TYPE_DB) + { + fprintf( stderr, "%s error: invalid object type\n", id); +- return( 1 ); ++ return( NULL ); + } + + db->parent.recordIdx = 0; +@@ -50,7 +51,7 @@ + { + fprintf( stderr, "%s error: unable to open %s mode \"w\"\n", id, db->parent.path ); + perror( "system message" ); +- return( 1 ); ++ return( NULL ); + } + /*zzzzzzzzzzzzzz*/ + +@@ -91,14 +92,15 @@ + newPath = (char*)calloc( stringSize, 1 ); + strcpy( newPath, db->parent.path ); + MGdbDestroy( db ); +- if( ( db = MGdbOpen( newPath ) ) == NULL ) ++ if( ( newDb = MGdbOpen( newPath ) ) == NULL ) + { + fprintf( stderr, "%s error: unable to MGdbOpen %s\n", id, newPath ); + perror( "system message" ); +- return( 1 ); ++ return( NULL ); + } ++ db = newDb; + free( newPath ); +- return( 0 ); ++ return( newDb ); + } + + +diff -ruN ../0.3.3/libMG/src/MGdbOpen.c ./libMG/src/MGdbOpen.c +--- ../0.3.3/libMG/src/MGdbOpen.c Sat Nov 5 05:43:08 2005 ++++ ./libMG/src/MGdbOpen.c Tue Nov 8 08:20:40 2005 +@@ -26,11 +26,10 @@ + classDb* MGdbOpen( char* dbFileName ) + { + char id[] = "MGdbOpen"; +- int errorCode = 0; + static classDb* db; + + /*zzzzzzzzzzzzzz*/ +- db = ( classDb* )malloc( sizeof(classDb) + 1 ); ++ db = ( classDb* )calloc( sizeof(classDb), 1 ); + db->parent.mallocIdx = 1; + /*zzzzzzzzzzzzzz*/ + +@@ -48,13 +47,6 @@ + db->parent.recordIdx = 0; + db->parent.recordQty = 0; + db->parent.type = CLASS_TYPE_DB; +- +- +- if(errorCode) +- { +- fprintf( stderr, "%s error: %s returned errorCode %d\n", id, "MGmSetString", errorCode ); +- assert(0); +- } + + MGdbRead( db ); + +diff -ruN ../0.3.3/libMG/src/libMG.h ./libMG/src/libMG.h +--- ../0.3.3/libMG/src/libMG.h Sat Nov 5 05:43:08 2005 ++++ ./libMG/src/libMG.h Tue Nov 8 11:37:11 2005 +@@ -106,7 +106,7 @@ + classDb* MGdbCreate( char* dbFileName, ... ); + classDb* MGdbOpen( char* dbFileName ); + int MGdbAdd(classDb* db, ...); +-int MGdbDelete(classDb* db, int recordIdx ); ++classDb* MGdbDelete(classDb* db, int recordIdx ); + int MGdbDestroy(classDb* db); + int MGdbGetRecno(classDb* db ); + int MGdbGetRecordQty(classDb* db); +diff -ruN ../0.3.3/libMGPM/src/MGPMrBestOldPort.c ./libMGPM/src/MGPMrBestOldPort.c +--- ../0.3.3/libMGPM/src/MGPMrBestOldPort.c Mon Nov 7 14:51:35 2005 ++++ ./libMGPM/src/MGPMrBestOldPort.c Tue Nov 8 00:16:52 2005 +@@ -121,7 +121,7 @@ + property->fieldOldPortsDbOldPortDir, + exact ) ) + { +- fprintf( stdout, "skipping %s %s old dependency: %s\n", ++ fprintf( stdout, "skipping %s %s until dependency %s updated\n", + oldPortName, + oldPortDir, + MGdbGet( property->availableDependenciesDb, +@@ -156,7 +156,7 @@ + property->fieldOldPortsDbOldPortDir, + exact ) ) + { +- fprintf( stdout, "skipping %s %s old dependency: %s\n", ++ fprintf( stdout, "skipping %s %s until dependency %s updated\n", + oldPortName, + oldPortDir, + MGdbGet( property->availableDependenciesDb, +diff -ruN ../0.3.3/libMGPM/src/MGPMrController.c ./libMGPM/src/MGPMrController.c +--- ../0.3.3/libMGPM/src/MGPMrController.c Sat Nov 5 05:43:08 2005 ++++ ./libMGPM/src/MGPMrController.c Tue Nov 8 12:29:47 2005 +@@ -30,9 +30,18 @@ + #include <libMGPM.h> + + int rPmUpgradeNewMethod( structProperty* property ); +-int rPmUpgradeOriginalMethod( structProperty* property ); + int MGPMrController( structProperty* property, char* path ) + { ++ char ignore[] = "/IGNORE"; ++ char upgradeInteractive[] = "--upgrade-interactive"; ++ char resume[] = "--resume"; ++ char ui[] = "-ui"; ++ char backUp[] = "--back-up"; ++ char yes[] = "--yes"; ++ char y[] = "-y"; ++ char f[] = "-f"; ++ char fix[] = "--fix"; ++ char bu[] = "-bu"; + char exact[] = "exact"; + char id[] = "MGPMrController"; + char* command = NULL; +@@ -52,8 +61,8 @@ + int oldPortsDbTOTALIZER = 0; + + command = (char*)calloc( bufferSize,1); +- oldPortDir = (char*)calloc(255,1); +- oldPortName = (char*)calloc(255,1); ++ oldPortDir = (char*)calloc(512,1); ++ oldPortName = (char*)calloc(512,1); + xtermTitle = (char*)calloc( bufferSize,1 ); + + property->cacheDb = MGdbCreate( +@@ -71,14 +80,14 @@ + property->commandLineDb = MGdbOpen( property->commandLineDbFileName ); + + MGdbGoTop( property->commandLineDb ); +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "-f", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, f, property->fieldCommandLineDbKey, exact ) ) + { + property->forced = 1; + fprintf( stdout, "%s %s info: running in forced update mode\n", id, PACKAGE_VERSION ); + while( fflush( stdout ) ); + } + MGdbGoTop( property->commandLineDb ); +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "--fix", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, fix, property->fieldCommandLineDbKey, exact ) ) + { + property->forced = 1; + fprintf( stdout, "%s %s info: running in forced update mode\n", id, PACKAGE_VERSION ); +@@ -86,37 +95,37 @@ + } + + MGdbGoTop( property->commandLineDb ); +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "-bu", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, bu, property->fieldCommandLineDbKey, exact ) ) + { + property->backUp = 1; + } + MGdbGoTop( property->commandLineDb ); +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "--back-up", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, backUp, property->fieldCommandLineDbKey, exact ) ) + { + property->backUp = 1; + } + MGdbGoTop( property->commandLineDb ); +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "-y", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, y, property->fieldCommandLineDbKey, exact ) ) + { + property->autoConflicts = 1; + property->autoMoved = 1; + } +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "--yes", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, yes, property->fieldCommandLineDbKey, exact ) ) + { + property->autoConflicts = 1; + } + MGdbGoTop( property->commandLineDb ); +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "--resume", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, resume, property->fieldCommandLineDbKey, exact ) ) + { + property->resume = 1; + } + MGdbGoTop( property->commandLineDb ); +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "-ui", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, ui, property->fieldCommandLineDbKey, exact ) ) + { + property->interactive = 1; + } + MGdbGoTop( property->commandLineDb ); +- if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, "--upgrade-interactive", property->fieldCommandLineDbKey, exact ) ) ++ if( MGdbSeek( property->commandLineDb, property->fieldCommandLineDbKey, upgradeInteractive, property->fieldCommandLineDbKey, exact ) ) + { + property->interactive = 1; + } +@@ -128,7 +137,7 @@ + property->configDb = MGdbOpen( property->configDbFileName ); + property->ignoreDb = MGdbOpen( property->ignoreDbFileName ); + MGdbGoTop( property->configDb ); +- while( ( configDbValuePtr = MGdbSeek( property->configDb, property->fieldConfigDbKey, "/IGNORE", property->fieldConfigDbValue, exact ) ) ) ++ while( ( configDbValuePtr = MGdbSeek( property->configDb, property->fieldConfigDbKey, ignore, property->fieldConfigDbValue, exact ) ) ) + { + MGdbAdd( property->ignoreDb, configDbValuePtr, "set to ignore in pm-020.conf", NULL ); + fprintf( stdout, "%s %s info: Adding %s to ignoreDB reason: %s\n", id, PACKAGE_VERSION, configDbValuePtr, "set to ignore in pm-020.conf" ); +@@ -146,6 +155,7 @@ + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrCreateInstalledDb", errorCode ); + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 1 ); + } +@@ -155,11 +165,13 @@ + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrShowLeaves", errorCode ); + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 1 ); + } + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 0 ); + } +@@ -190,6 +202,7 @@ + "MGPMrCreateInstalledDb", errorCode ); + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 1 ); + } +@@ -197,6 +210,10 @@ + { + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, + "MGPMrCreateAllUpdateStatusDb", errorCode ); ++ free( command ); ++ free( oldPortDir ); ++ free( oldPortName ); ++ free( xtermTitle ); + return( 1 ); + } + } +@@ -206,6 +223,10 @@ + { + fprintf( stdout, "%s %s error: failed to open %s\n", id, PACKAGE_VERSION, property->ignoreDbFileName ); + perror( "system" ); ++ free( command ); ++ free( oldPortDir ); ++ free( oldPortName ); ++ free( xtermTitle ); + return( 1 ); + } + MGdbDestroy( property->ignoreDb ); +@@ -215,11 +236,13 @@ + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrShowLeavesDelete", errorCode ); + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 1 ); + } + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 0 ); + } +@@ -231,6 +254,7 @@ + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrCreateStatusDb", errorCode ); + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 1 ); + } +@@ -238,6 +262,10 @@ + if( ( errorCode = MGPMrMissingDependencies( property ) ) ) + { + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrMissingDependencies", errorCode ); ++ free( command ); ++ free( oldPortDir ); ++ free( oldPortName ); ++ free( xtermTitle ); + return( 1 ); + } + +@@ -246,11 +274,13 @@ + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrCreateStatusDb", errorCode ); + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 1 ); + } + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return(0); + } +@@ -258,9 +288,10 @@ + if( path && strcmp( path, "PMUPGRADE" ) == 0 ) + { + rPmUpgradeNewMethod( property ); +-/* +- rPmUpgradeOriginalMethod( property ); +-*/ ++ free( command ); ++ free( oldPortDir ); ++ free( oldPortName ); ++ free( xtermTitle ); + return( 0 ); + } + +@@ -274,6 +305,10 @@ + if( ( errorCode = MGPMrSinglePortCreateStatusDb( property, path ) ) ) + { + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrSinglePortCreateStatusDb", errorCode ); ++ free( command ); ++ free( oldPortDir ); ++ free( oldPortName ); ++ free( xtermTitle ); + return( 1 ); + } + +@@ -293,6 +328,7 @@ + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrCreateStatusDb", errorCode ); + free( command ); + free( oldPortDir ); ++ free( oldPortName ); + free( xtermTitle ); + return( 1 ); + } +@@ -300,6 +336,10 @@ + if( ( errorCode = MGPMrSinglePortStatus( property ) ) ) + { + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrSinglePortStatus", errorCode ); ++ free( command ); ++ free( oldPortDir ); ++ free( oldPortName ); ++ free( xtermTitle ); + return( 1 ); + } + oldPortDir[0] = 0; +@@ -319,6 +359,10 @@ + else + { + fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrBestOldPort", errorCode ); ++ free( command ); ++ free( oldPortDir ); ++ free( oldPortName ); ++ free( xtermTitle ); + return( 1 ); + } + } +@@ -448,236 +492,9 @@ + } + free( command ); + free( oldPortDir ); +- free( xtermTitle ); +- return( errorCode ); +-} +- +-/*******************************************************/ +-int rPmUpgradeOriginalMethod( structProperty* property ) +-/*******************************************************/ +-{ +- char exact[] = "exact"; +- char id[] = "rPmUpgradeOriginalMethod"; +- char* command = NULL; +- char* configDbValuePtr = NULL; +- char* oldPortDir = NULL; +- char* oldPortName = NULL; +- char* oldPortsDbNewPortDirPtr = NULL; +- char* oldPortsDbNewPortNamePtr = NULL; +- char* oldPortsDbReasonPtr = NULL; +- char* term = NULL; +- char* xtermTitle = NULL; +- float percentDone = 0; +- int bufferSize = 0xffff; +- int errorCode = 0; +- int oldPortsDbIDX = 0; +- int oldPortsDbQTY = 0; +- int oldPortsDbTOTALIZER = 0; +- +- command = (char*)calloc( bufferSize,1); +- oldPortDir = (char*)calloc(255,1); +- oldPortName = (char*)calloc(255,1); +- xtermTitle = (char*)calloc( bufferSize,1 ); +- +- property->cacheDb = MGdbCreate( +- property->cacheDbFileName, +- property->fieldCacheDbPortDir, +- property->fieldCacheDbAvailablePortName, +- property->fieldCacheDbMakeFileSize, +- property->fieldCacheDbMakeFileTime, +- NULL ); +- MGdbDestroy( property->cacheDb ); +- if( property->log ) +- { +- strcpy( command, "echo \"portmanager.log\" " ); +- strcat( command, " > /var/log/portmanager.log" ); +- system( command ); +- strcpy( command, "date >> /var/log/portmanager.log" ); +- system( command ); +- } +- while( 1 ) +- { +- if( ( errorCode = MGPMrCreateInstalledDb( property ) ) ) +- { +- fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrCreateInstalledDb", errorCode ); +- free( command ); +- free( oldPortDir ); +- free( oldPortName ); +- free( xtermTitle ); +- return( 1 ); +- } +- +- if( ( errorCode = MGPMrMissingDependencies( property ) ) ) +- { +- fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrMissingDependencies", errorCode ); +- free( command ); +- free( oldPortDir ); +- free( oldPortName ); +- free( xtermTitle ); +- return( 1 ); +- } +- if( ( errorCode = MGPMrStatus( property ) ) ) +- { +- fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrCreateStatusDb", errorCode ); +- free( command ); +- free( oldPortDir ); +- free( oldPortName ); +- free( xtermTitle ); +- return( 1 ); +- } +- oldPortDir[0] = 0; +- oldPortName[0] = 0; +- if( ( errorCode = MGPMrBestOldPort( property, oldPortDir, oldPortName ) ) ) +- { +- if( errorCode == 100 ) +- { +- fprintf( stdout, "%s\n", SINGLE_LINES ); +- fprintf( stdout, "%s %s INFO: finished with some ports not updated if --log was used see /var/log/portmanager.log\n", +- "portmanager", PACKAGE_VERSION ); +- while( fflush( stdout ) ); +- fprintf( stdout, "%s\n", SINGLE_LINES ); +- errorCode = 0; +- break; +- } +- else +- { +- fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGPMrBestOldPort", errorCode ); +- free( command ); +- free( oldPortDir ); +- free( oldPortName ); +- free( xtermTitle ); +- return( 1 ); +- } +- } +- if( strlen(oldPortDir) > 1 ) +- { +- fprintf( stdout, "%s\n", SINGLE_LINES ); +- fprintf( stdout, "updating %s %s\n", oldPortName, oldPortDir ); +- +- /* +- * Set xterm title bar indicator +- */ +- property->oldPortsDb = MGdbOpen( property->oldPortsDbFileName ); +- oldPortsDbQTY = MGdbGetRecordQty( property->oldPortsDb ); +- +- if( oldPortsDbQTY - 1 > oldPortsDbTOTALIZER ) +- { +- oldPortsDbTOTALIZER = oldPortsDbQTY - 1; +- } +- percentDone = 100 - ( 100 * ( ( (float)oldPortsDbQTY - 1 ) / (float)oldPortsDbTOTALIZER ) ); +- fprintf( stdout, "percentDone-=>%d = 100 - ( 100 * ( oldPortsDbQTY-=>%d / oldPortsDbTOTALIZER-=>%d ) ) \n", +- (int)percentDone, oldPortsDbQTY-1, oldPortsDbTOTALIZER ); +- while( fflush( stdout ) ); +- +- term = getenv("TERM"); +- if( term && strncmp( term, "xterm", 5 ) == 0 && isatty(fileno(stdout)) ) +- { +- /* +- pr 81481 +- To fix the modification of xterm title, even when redirecting, one can +- test isatty(fileno(stdout)) before printing the escape sequence. +- */ +- strcpy( xtermTitle, "portmanager" ); +- strcat( xtermTitle, " done:% " ); +- strcat( xtermTitle, MGrIntToString( (long)percentDone ) ); +- strcat( xtermTitle, " updating " ); +- strcat( xtermTitle, oldPortName ); +- strcat( xtermTitle, " " ); +- strcat( xtermTitle, oldPortDir ); +- printf( "%c]0;%s%c", '\033', xtermTitle, '\007' ); +- } +- if( property->log ) +- { +- property->configDb = MGdbOpen( property->configDbFileName ); +- MGdbGoTop( property->configDb ); +- configDbValuePtr = MGdbSeek( property->configDb, property->fieldConfigDbKey, oldPortDir, +- property->fieldConfigDbValue, exact ); +- +- MGdbGoTop( property->oldPortsDb ); +- oldPortsDbReasonPtr = MGdbSeek( property->oldPortsDb, property->fieldOldPortsDbOldPortDir, oldPortDir, +- property->fieldOldPortsDbReason, exact ); +- if( oldPortsDbReasonPtr ) +- { +- oldPortsDbIDX = MGdbGetRecno( property->oldPortsDb ) - 1; +- oldPortsDbNewPortNamePtr = MGdbGet( property->oldPortsDb, oldPortsDbIDX, +- property->fieldOldPortsDbNewPortName ); +- oldPortsDbNewPortDirPtr = MGdbGet( property->oldPortsDb, oldPortsDbIDX, +- property->fieldOldPortsDbNewPortDir ); +- } +- strcpy( command, "echo \" " ); +- if( strcmp( oldPortName, "not installed" ) == 0 ) +- { +- strcat( command, "adding " ); +- strcat( command, oldPortName ); +- strcat( command, " " ); +- strcat( command, oldPortDir ); +- strcat( command, " " ); +- } +- else +- { +- strcat( command, "updating " ); +- strcat( command, oldPortName ); +- strcat( command, " " ); +- strcat( command, oldPortDir ); +- strcat( command, " " ); +- } +- if( configDbValuePtr ) +- { +- strcat( command, " options " ); +- strcat( command, configDbValuePtr ); +- } +- if( oldPortsDbReasonPtr ) +- { +- strcat( command, " " ); +- strcat( command, oldPortsDbReasonPtr ); +- strcat( command, " " ); +- strcat( command, oldPortsDbNewPortNamePtr ); +- strcat( command, " " ); +- strcat( command, oldPortsDbNewPortDirPtr ); +- strcat( command, " " ); +- } +- strcat( command, "\" >> /var/log/portmanager.log" ); +- system( command ); +- MGdbDestroy( property->configDb ); +- } +- MGdbDestroy( property->oldPortsDb ); +- } +- else +- { +- /* +- * Set xterm title bar indicator +- * +- * pr 81481 +- * To fix the modification of xterm title, even when redirecting, one can +- * test isatty(fileno(stdout)) before printing the escape sequence. +- */ +- if( term && strncmp( term, "xterm", 5 ) == 0 && isatty(fileno(stdout)) ) +- { +- strcpy( xtermTitle, "portmanager" ); +- strcat( xtermTitle, " " ); +- strcat( xtermTitle, " finished" ); +- printf( "%c]0;%s%c", '\033', xtermTitle, '\007' ); +- } +- fprintf( stdout, "%s %s INFO: all ports are up to date\n", "portmanager", PACKAGE_VERSION ); +- while( fflush( stdout ) ); +- break; +- } +- MGPMrUpdate( property, oldPortDir, oldPortName ); +- } +- +- if( property->log ) +- { +- strcpy( command, "echo \" end of log \" " ); +- strcat( command, " >> /var/log/portmanager.log" ); +- system( command ); +- strcpy( command, "date >> /var/log/portmanager.log" ); +- system( command ); +- } +- free( command ); +- free( oldPortDir ); + free( oldPortName ); + free( xtermTitle ); +- return( 0 ); ++ return( errorCode ); + } + + /*******************************************************/ +@@ -901,6 +718,7 @@ + strcpy( command, "date >> /var/log/portmanager.log" ); + system( command ); + } ++ free( oldPortName ); + free( command ); + free( oldPortDir ); + free( xtermTitle ); +diff -ruN ../0.3.3/libMGPM/src/MGPMrCreateAllUpdateStatusDb.c ./libMGPM/src/MGPMrCreateAllUpdateStatusDb.c +--- ../0.3.3/libMGPM/src/MGPMrCreateAllUpdateStatusDb.c Sun Nov 6 19:26:26 2005 ++++ ./libMGPM/src/MGPMrCreateAllUpdateStatusDb.c Tue Nov 8 15:49:01 2005 +@@ -52,7 +52,7 @@ + + counterPtr = &counter; + +- availablePortDir = (char*)calloc( 510, 1 ); ++ availablePortDir = (char*)calloc( bufferSize, 1 ); + availablePortName = (char*)calloc( bufferSize, 1 ); + + fprintf( stdout,"%s\n", SINGLE_LINES ); +@@ -122,6 +122,7 @@ + installedPortsDbIDX++; + } + MGdbDestroy( property->availablePortsDb ); ++ MGdbDestroy( property->installedPortsDb ); + MGdbDestroy( property->availableDependenciesDb ); + MGdbDestroy( property->configDb ); + free( availablePortDir ); +@@ -132,10 +133,9 @@ + int rrFindDepends( structProperty* property, char* availablePortDir, char* availablePortName, int* counterPtr ) + { + char id[] = "rrFindDepends"; +- char* availablePortsDbFlagPtr = NULL; + int availablePortsDbIDX = 0; + int errorCode = 0; +- int idx = 0; ++ int availablePortsDbQTY = 0; + + if( ( errorCode = rrGetPortName( property, availablePortDir, availablePortName ) ) ) + { +@@ -155,20 +155,19 @@ + /* + * fill dependencies for each record in property->availablePortsDb + */ +- availablePortsDbIDX = MGdbGetRecordQty( property->availablePortsDb ); +- idx = 1; +- while( idx < availablePortsDbIDX ) ++ availablePortsDbQTY = MGdbGetRecordQty( property->availablePortsDb ); ++ availablePortsDbIDX = 1; ++ while( availablePortsDbIDX < availablePortsDbQTY ) + { +- availablePortsDbFlagPtr = MGdbGet( property->availablePortsDb, idx, property->fieldAvailablePortsDbFlag ); +- if( availablePortsDbFlagPtr && strncmp( availablePortsDbFlagPtr, "0", 1 ) == 0 ) ++ if( strncmp( MGdbGet( property->availablePortsDb, availablePortsDbIDX, property->fieldAvailablePortsDbFlag ), "0", 1 ) == 0 ) + { +- strcpy( availablePortDir, MGdbGet( property->availablePortsDb, idx, property->fieldAvailablePortsDbPortDir ) ); +- strcpy( availablePortName, MGdbGet( property->availablePortsDb, idx, property->fieldAvailablePortsDbPortName ) ); ++ strcpy( availablePortDir, MGdbGet( property->availablePortsDb, availablePortsDbIDX, property->fieldAvailablePortsDbPortDir ) ); ++ strcpy( availablePortName, MGdbGet( property->availablePortsDb, availablePortsDbIDX, property->fieldAvailablePortsDbPortName ) ); + rrFillDependencies( property, availablePortName, availablePortDir, counterPtr ); +- availablePortsDbIDX = MGdbGetRecordQty( property->availablePortsDb ); +- idx = 0; ++ availablePortsDbQTY = MGdbGetRecordQty( property->availablePortsDb ); ++ availablePortsDbIDX = 0; + } +- idx++; ++ availablePortsDbIDX++; + } + return( 0 ); + } +@@ -340,7 +339,6 @@ + char* buffer = NULL; + int availablePortsDbIDX = 0; + int bufferSize = 0xffff; +- int errorCode = 0; + + buffer = calloc( bufferSize + 1, 1 ); + +@@ -361,14 +359,10 @@ + return( 1 ); + } + MGdbGoTop( property->availablePortsDb ); +- availablePortDirPtr = MGdbSeek( property->availablePortsDb, property->fieldAvailablePortsDbPortDir, availablePortDir, +- property->fieldAvailablePortsDbPortDir, exact ); +- availablePortsDbIDX = MGdbGetRecno( property->availablePortsDb ) - 1; +- if( ( errorCode = MGdbDelete( property->availablePortsDb, availablePortsDbIDX ) ) ) +- { +- fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGdbDelete", errorCode ); +- return( 1 ); +- } ++ availablePortDirPtr = MGdbSeek( property->availablePortsDb, property->fieldAvailablePortsDbPortDir, availablePortDir, ++ property->fieldAvailablePortsDbPortDir, exact ); ++ availablePortsDbIDX = MGdbGetRecno( property->availablePortsDb ) - 1; ++ property->availablePortsDb = MGdbDelete( property->availablePortsDb, availablePortsDbIDX ); + MGdbAdd( property->availablePortsDb, availablePortName, availablePortDir, "1", NULL); + + return( 0 ); +@@ -435,8 +429,8 @@ + int idx1 = 0; + int idx2 = 0; + +- dependencyPortDir = (char*)calloc( 255, 1 ); +- dependencyPortName = (char*)calloc( 255, 1 ); ++ dependencyPortDir = (char*)calloc( bufferSize, 1 ); ++ dependencyPortName = (char*)calloc( bufferSize, 1 ); + + bufferSize = strlen( buffer ); + idx1 = 0; +diff -ruN ../0.3.3/libMGPM/src/MGPMrSinglePortCreateStatusDb.c ./libMGPM/src/MGPMrSinglePortCreateStatusDb.c +--- ../0.3.3/libMGPM/src/MGPMrSinglePortCreateStatusDb.c Sat Nov 5 21:12:54 2005 ++++ ./libMGPM/src/MGPMrSinglePortCreateStatusDb.c Tue Nov 8 15:53:41 2005 +@@ -52,7 +52,7 @@ + + counterPtr = &counter; + +- availablePortDir = (char*)calloc( 255, 1 ); ++ availablePortDir = (char*)calloc( bufferSize, 1 ); + availablePortName = (char*)calloc( bufferSize, 1 ); + + /*.............................................................*/ +@@ -237,7 +237,6 @@ + char* buffer = NULL; + int availablePortsDbIDX = 0; + int bufferSize = 0xffff; +- int errorCode = 0; + + buffer = calloc( bufferSize + 1, 1 ); + rDependencyParse( property, buffer, availablePortName, availablePortDir, BUILD_DEPENDS, counterPtr ); +@@ -257,13 +256,8 @@ + availablePortDirPtr = MGdbSeek( property->availablePortsDb, property->fieldAvailablePortsDbPortDir, availablePortDir, + property->fieldAvailablePortsDbPortDir, exact ); + availablePortsDbIDX = MGdbGetRecno( property->availablePortsDb ) - 1; +- if( ( errorCode = MGdbDelete( property->availablePortsDb, availablePortsDbIDX ) ) ) +- { +- fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGdbDelete", errorCode ); +- return( 1 ); +- } ++ property->availablePortsDb = MGdbDelete( property->availablePortsDb, availablePortsDbIDX ); + MGdbAdd( property->availablePortsDb, availablePortName, availablePortDir, "1", NULL); +- + return( 0 ); + } + +@@ -328,8 +322,8 @@ + int idx1 = 0; + int idx2 = 0; + +- dependencyPortDir = (char*)calloc( 255, 1 ); +- dependencyPortName = (char*)calloc( 255, 1 ); ++ dependencyPortDir = (char*)calloc( bufferSize, 1 ); ++ dependencyPortName = (char*)calloc( bufferSize, 1 ); + + bufferSize = strlen( buffer ); + idx1 = 0; +diff -ruN ../0.3.3/libMGPM/src/MGPMrSinglePortStatus.c ./libMGPM/src/MGPMrSinglePortStatus.c +--- ../0.3.3/libMGPM/src/MGPMrSinglePortStatus.c Mon Nov 7 09:48:20 2005 ++++ ./libMGPM/src/MGPMrSinglePortStatus.c Tue Nov 8 11:18:04 2005 +@@ -333,6 +333,7 @@ + char* oldDependencyDir, + int* counterPtr ) + { ++ char* availableDependenciesDbDependencyTypePtr = NULL; + char id[] = "rCheckForOldDependencies"; + char exact[] = "exact"; + char* availableDependenciesDbDependencyNamePtr = NULL; +@@ -351,19 +352,20 @@ + * is a BUILD_DEPENDS desired out come is installedPortsDbPortDir with + * a RUN_DEPENDS at finish time + */ +- while( ( availableDependenciesDbDependencyNamePtr = MGdbSeek( property->availableDependenciesDb, +- property->fieldAvailableDependenciesDbPortDir, +- installedPortsDbPortDir, +- property->fieldAvailableDependenciesDbDependencyName, +- exact ) ) ) ++ while( ( availableDependenciesDbDependencyNamePtr = MGdbSeek( property->availableDependenciesDb, ++ property->fieldAvailableDependenciesDbPortDir, ++ installedPortsDbPortDir, ++ property->fieldAvailableDependenciesDbDependencyName, ++ exact ) ) ) + { +- if( strcmp( MGdbGet( property->availableDependenciesDb, +- MGdbGetRecno( property->availableDependenciesDb ) -1, +- property->fieldAvailableDependenciesDbDependType ), "BUILD_DEPENDS" ) == 0 ) ++ availableDependenciesDbDependencyTypePtr = MGdbGet( property->availableDependenciesDb, ++ MGdbGetRecno( property->availableDependenciesDb ) -1, ++ property->fieldAvailableDependenciesDbDependType ); ++ ++ if( availableDependenciesDbDependencyTypePtr && strcmp( availableDependenciesDbDependencyTypePtr, "BUILD_DEPENDS" ) == 0 ) + { + continue; + } +- + break; + } + +diff -ruN ../0.3.3/libMGPM/src/MGPMrUpdate.c ./libMGPM/src/MGPMrUpdate.c +--- ../0.3.3/libMGPM/src/MGPMrUpdate.c Sun Nov 6 05:17:31 2005 ++++ ./libMGPM/src/MGPMrUpdate.c Tue Nov 8 16:34:59 2005 +@@ -69,7 +69,6 @@ + char yes[] = "--yes"; + char* availableDependenciesDbDependencyDirPtr = NULL; + char* availableDependenciesDbDependencyNamePtr = NULL; +- char* availablePortsFlagPtr = NULL; + char* bufferBase = NULL; + char* dependencyDbDependencyPortDirPtr = NULL; + char* dependencyDbDependencyPortNamePtr = NULL; +@@ -272,14 +271,12 @@ + fprintf( stdout, "one more attempt and it will be marked as ignore.\n\n" ); + while( fflush( stdout ) ); + MGdbGoTop( property->strikesDb ); +- strikePtr = MGdbSeek( property->strikesDb, property->fieldStrikesDbPortDir, oldPortDir, property->fieldStrikesIDX, exact ); +- if( ( errorCode = MGdbDelete( property->strikesDb, MGdbGetRecno( property->strikesDb ) - 1 ) ) ) +- { +- fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGdbDelete", errorCode ); +- while( fflush( stdout ) ); +- rCleanUp( property, &localProperty ); +- return( 1 ); +- } ++ strikePtr = MGdbSeek( property->strikesDb, ++ property->fieldStrikesDbPortDir, ++ oldPortDir, ++ property->fieldStrikesIDX, ++ exact ); ++ property->strikesDb = MGdbDelete( property->strikesDb, MGdbGetRecno( property->strikesDb ) - 1 ); + MGdbAdd( property->strikesDb, oldPortDir, "2", NULL ); + if( property->log ) + { +@@ -779,7 +776,8 @@ + MGdbGetRecno( property->availablePortsDb ) - 1, + property->fieldAvailablePortsDbPortName ) ); + while( fflush( stdout ) ); +- MGdbDelete( property->availablePortsDb, MGdbGetRecno( property->availablePortsDb ) - 1 ); ++ property->availablePortsDb = MGdbDelete( property->availablePortsDb, ++ MGdbGetRecno( property->availablePortsDb ) - 1 ); + MGdbGoTop( property->availablePortsDb ); + } + +@@ -1262,19 +1260,17 @@ + if( property->pmMode || property->forced ) + { + MGdbGoTop( property->availablePortsDb ); +- availablePortsFlagPtr = MGdbSeek( property->availablePortsDb, property->fieldAvailablePortsDbPortDir, oldPortDir, +- property->fieldAvailablePortsDbFlag, exact ); +- if( availablePortsFlagPtr && strncmp( availablePortsFlagPtr, "2", 1 ) ) ++ if( strncmp( MGdbSeek( property->availablePortsDb, ++ property->fieldAvailablePortsDbPortDir, ++ oldPortDir, ++ property->fieldAvailablePortsDbFlag, ++ exact ), ++ "2", 1 ) ) + { + availablePortsDbIDX = MGdbGetRecno( property->availablePortsDb ) - 1; + strcpy( localProperty.newPortName, MGdbGet( property->availablePortsDb, availablePortsDbIDX, property->fieldAvailablePortsDbPortName ) ); + strcpy( localProperty.newPortDir, MGdbGet( property->availablePortsDb, availablePortsDbIDX, property->fieldAvailablePortsDbPortDir ) ); +- if( ( errorCode = MGdbDelete( property->availablePortsDb, availablePortsDbIDX ) ) ) +- { +- fprintf( stdout, "%s %s error: %s returned errorCode %d\n", id, PACKAGE_VERSION, "MGdbDelete", errorCode ); +- rCleanUp( property, &localProperty ); +- return( 1 ); +- } ++ property->availablePortsDb = MGdbDelete( property->availablePortsDb, availablePortsDbIDX ); + MGdbAdd( property->availablePortsDb, localProperty.newPortName, localProperty.newPortDir, "2", NULL ); + } + } --- portmanager-0.3.3_1.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051109023344.3F261130C21>