static void TestDestruction(ow_test_context Context) { set Set; InitPosixNetClientSet(&Set); CreateClient(&Set, 1); CreateClient(&Set, 2); CreateClient(&Set, 3); iterator Iterator = CreatePosixNetClientSetIterator(&Set); AdvancePosixNetClientSetIterator(&Iterator); AdvancePosixNetClientSetIterator(&Iterator); DestroyClient(&Iterator); AdvancePosixNetClientSetIterator(&Iterator); OW_AssertEqualInt(3, Iterator.Client->FD); AdvancePosixNetClientSetIterator(&Iterator); OW_AssertFalse(AdvancePosixNetClientSetIterator(&Iterator)); TerminatePosixNetClientSet(&Set); }
int main(int argc, char *argv[]) { int error = 0; if ((argc == 2) && (strcmp(argv[1], "-v") == 0)) { ShowVersion(); return 0; } if ((InitClient()) || (ConnectToMiranda()) || (GetKnownCommands()) || (LoadLangPackModule())) { lpprintf("Could not create connection with Miranda or could not retrieve list of known commands.\n"); error = MIMRES_NOMIRANDA; } else{ if ((argc <= 1) || (argc > MAX_ARGUMENTS)) { PrintUsage(); } else{ PReply reply = ParseCommand(argv, argc); if (reply) { error = reply->code; lpprintf("%s\n", reply->message); } else{ lpprintf(Translate("Unknown command '%s'.\n"), argv[1]); } DestroyKnownCommands(); DisconnectFromMiranda(); DestroyClient(); } } return error; }