Waitrud Weber’s blog

things and reminders for memories

CodeAnalyzer: windows-make: Debug Message, and you could find it.

Debug:
1. Put allocation and check it NULL or not for the exit of memorization error.
*

1 - - -
2

main.cpp  Wed Jul 06 14:39:00 2022

...
111 :int main ( int argc, char** argv ) {
112 :    print_socket_msg = 1;
113 :    err_msg_001("int main ( int argc, char** argv ) starts. \r\n");
114 :    err_msg_001("int main ( int argc, char** argv ) ends. \r\n");
115 :
116 :    err_msg_002("err_msg_002: int main ( int argc, char** argv ) starts. \r\n");
117 :    err_msg_002("err_msg_002: int main ( int argc, char** argv ) ends. \r\n");
118 :
119 ://    err_msg_003("err_msg_003: int main ( int argc, char** argv ) starts. \r\n");
120 ://    err_msg_003("err_msg_003: int main ( int argc, char** argv ) ends. \r\n");
121 :
122 :    return 0;
123 :}
...

- -
3

Print.cpp  Wed Jul 06 14:46:41 2022

...
402 :char* err_msg_001(const char *fmt, ...)
403 :{
404 :    int send_success = 0;
405 :    char** argv; 
406 :    int argc;
407 :    char* result;
408 :    va_list     ap;
409 :
410 :    if ( level_error_msg > 1 ) return NULL;
411 :
412 :    va_start(ap, fmt);
413 :    result = err_doit_001(0, 0, fmt, ap);
414 :    va_end(ap);
415 :
416 :    // ...
417 :    if ( print_socket_msg != 1 ) return NULL;
418 :
419 :    argc = 3;
420 :    argv = (char**) malloc( sizeof(char**) * argc ) ;
421 :    if ( argv == NULL ) {
422 :        printf("err_msg_001: it exit because argv is NULL.\r\n");
423 :    }
424 :
425 :    set_sender_default_parameters_001 ( &argc, argv ) ;
426 :
427 :    argv[2] = (char *) result;
428 :    send_success = sender_main ( argc, argv ) ;
429 :
430 :    for ( int i=0; i<3; i++ )
431 :        free(argv[i]);
432 :
433 :    free(argv);
434 :    // ...
435 :
436 :
437 :    return result;
438 :} 
...

- -
4

main.cpp  Wed Jul 06 14:39:00 2022

...
111 :int main ( int argc, char** argv ) {
112 :    print_socket_msg = 1;
113 :    err_msg_001("int main ( int argc, char** argv ) starts. \r\n");
114 :    err_msg_001("int main ( int argc, char** argv ) ends. \r\n");
115 :
116 :    err_msg_002("err_msg_002: int main ( int argc, char** argv ) starts. \r\n");
117 :    err_msg_002("err_msg_002: int main ( int argc, char** argv ) ends. \r\n");
118 :
119 ://    err_msg_003("err_msg_003: int main ( int argc, char** argv ) starts. \r\n");
120 ://    err_msg_003("err_msg_003: int main ( int argc, char** argv ) ends. \r\n");
121 :
122 :    return 0;
123 :}
...

- -
5 - - -


*

1 - - -
2 > .\winmain_001.exe
err_msg_002: int main ( int argc, char** argv ) starts.
err_msg_002: int main ( int argc, char** argv ) ends.
- -
3 - - -
4 > .\winmain_001.exe
err_msg_002: int main ( int argc, char** argv ) starts.
err_msg_002: int main ( int argc, char** argv ) ends.
- -
5 - - -



Error: sounce code - -
  https://github.com/WaitrudWeber/source_zip/blob/master/token_20220706-001.zip    
  https://github.com/WaitrudWeber/source_zip/blob/master/token_20220706-001.zip    
  https://github.com/WaitrudWeber/source_zip/blob/master/token_20220706-001-01.zip    
  https://github.com/WaitrudWeber/source_zip/blob/master/token_20220706-001-02.zip    
  https://github.com/WaitrudWeber/source_zip/blob/master/token_20220706-001-02-01.zip    
  https://github.com/WaitrudWeber/source_zip/blob/master/token_20220706-001-03.zip    
  https://github.com/WaitrudWeber/source_zip/blob/master/token_20220706-001-04.zip