use a function called exit_zmu instead of exit() to properly close logs and db. The reason is just to reduce connection lost logs in mysql.
This commit is contained in:
parent
3b9f7b38c5
commit
11cacebb3b
24
src/zmu.cpp
24
src/zmu.cpp
|
@ -422,7 +422,7 @@ int main( int argc, char *argv[] ) {
|
||||||
if ( strcmp( config.auth_relay, "none" ) == 0 ) {
|
if ( strcmp( config.auth_relay, "none" ) == 0 ) {
|
||||||
if ( !username ) {
|
if ( !username ) {
|
||||||
fprintf( stderr, "Error, username must be supplied\n" );
|
fprintf( stderr, "Error, username must be supplied\n" );
|
||||||
exit( -1 );
|
exit_zmu( -1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( username ) {
|
if ( username ) {
|
||||||
|
@ -431,7 +431,7 @@ int main( int argc, char *argv[] ) {
|
||||||
} else {
|
} else {
|
||||||
if ( !(username && password) && !auth ) {
|
if ( !(username && password) && !auth ) {
|
||||||
fprintf( stderr, "Error, username and password or auth string must be supplied\n" );
|
fprintf( stderr, "Error, username and password or auth string must be supplied\n" );
|
||||||
exit( -1 );
|
exit_zmu( -1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
//if ( strcmp( config.auth_relay, "hashed" ) == 0 )
|
//if ( strcmp( config.auth_relay, "hashed" ) == 0 )
|
||||||
|
@ -449,7 +449,7 @@ int main( int argc, char *argv[] ) {
|
||||||
}
|
}
|
||||||
if ( !user ) {
|
if ( !user ) {
|
||||||
fprintf( stderr, "Error, unable to authenticate user\n" );
|
fprintf( stderr, "Error, unable to authenticate user\n" );
|
||||||
exit( -1 );
|
exit_zmu( -1 );
|
||||||
}
|
}
|
||||||
ValidateAccess( user, mon_id, function );
|
ValidateAccess( user, mon_id, function );
|
||||||
}
|
}
|
||||||
|
@ -463,7 +463,7 @@ int main( int argc, char *argv[] ) {
|
||||||
}
|
}
|
||||||
if ( ! monitor->connect() ) {
|
if ( ! monitor->connect() ) {
|
||||||
Error( "Can't connect to capture daemon: %d %s", monitor->Id(), monitor->Name() );
|
Error( "Can't connect to capture daemon: %d %s", monitor->Id(), monitor->Name() );
|
||||||
exit( -1 );
|
exit_zmu( -1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
char separator = ' ';
|
char separator = ' ';
|
||||||
|
@ -661,7 +661,7 @@ int main( int argc, char *argv[] ) {
|
||||||
delete monitor;
|
delete monitor;
|
||||||
} else {
|
} else {
|
||||||
fprintf( stderr, "Error, invalid monitor id %d\n", mon_id );
|
fprintf( stderr, "Error, invalid monitor id %d\n", mon_id );
|
||||||
exit( -1 );
|
exit_zmu( -1 );
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if ( function & ZMU_QUERY ) {
|
if ( function & ZMU_QUERY ) {
|
||||||
|
@ -669,10 +669,10 @@ int main( int argc, char *argv[] ) {
|
||||||
char vidString[0x10000] = "";
|
char vidString[0x10000] = "";
|
||||||
bool ok = LocalCamera::GetCurrentSettings( device, vidString, v4lVersion, verbose );
|
bool ok = LocalCamera::GetCurrentSettings( device, vidString, v4lVersion, verbose );
|
||||||
printf( "%s", vidString );
|
printf( "%s", vidString );
|
||||||
exit( ok?0:-1 );
|
exit_zmu( ok?0:-1 );
|
||||||
#else // ZM_HAS_V4L
|
#else // ZM_HAS_V4L
|
||||||
fprintf( stderr, "Error, video4linux is required for device querying\n" );
|
fprintf( stderr, "Error, video4linux is required for device querying\n" );
|
||||||
exit( -1 );
|
exit_zmu( -1 );
|
||||||
#endif // ZM_HAS_V4L
|
#endif // ZM_HAS_V4L
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -685,13 +685,13 @@ int main( int argc, char *argv[] ) {
|
||||||
|
|
||||||
if ( mysql_query( &dbconn, sql.c_str() ) ) {
|
if ( mysql_query( &dbconn, sql.c_str() ) ) {
|
||||||
Error( "Can't run query: %s", mysql_error( &dbconn ) );
|
Error( "Can't run query: %s", mysql_error( &dbconn ) );
|
||||||
exit( mysql_errno( &dbconn ) );
|
exit_zmu( mysql_errno( &dbconn ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
MYSQL_RES *result = mysql_store_result( &dbconn );
|
MYSQL_RES *result = mysql_store_result( &dbconn );
|
||||||
if ( !result ) {
|
if ( !result ) {
|
||||||
Error( "Can't use query result: %s", mysql_error( &dbconn ) );
|
Error( "Can't use query result: %s", mysql_error( &dbconn ) );
|
||||||
exit( mysql_errno( &dbconn ) );
|
exit_zmu( mysql_errno( &dbconn ) );
|
||||||
}
|
}
|
||||||
Debug( 1, "Got %d monitors", mysql_num_rows( result ) );
|
Debug( 1, "Got %d monitors", mysql_num_rows( result ) );
|
||||||
|
|
||||||
|
@ -738,8 +738,12 @@ int main( int argc, char *argv[] ) {
|
||||||
}
|
}
|
||||||
delete user;
|
delete user;
|
||||||
|
|
||||||
|
return exit_zmu(0);
|
||||||
|
}
|
||||||
|
int exit_zmu(int exit_code) {
|
||||||
logTerm();
|
logTerm();
|
||||||
zmDbClose();
|
zmDbClose();
|
||||||
|
|
||||||
return( 0 );
|
exit(exit_code);
|
||||||
|
return exit_code;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue