extern "C" jstring JNICALL Java_com_iped_ipcam_gui_UdtTools_monitorSocket(JNIEnv *env, jobject thiz, jstring camId) { if (first) { LOGI("### UdtTools monitor_init!"); first = 0; monitor_init(0); } freeSocket(); LOGI("### start monitorSocke"); char* idTmp = jstringToChar(env,camId); id = idTmp; socket1 = monitor_socket_fusion(idTmp); while (1) { if(socket1 == NULL) { return env->NewStringUTF("fusion error"); } LOGI("### wait to connection."); stun_sleep_ms(100); if (socket_fusion_is_usable(socket1) || socket_fusion_is_done(socket1)) { break; } } if (socket_fusion_is_usable(socket1)) { LOGI("### connection success. %p", socket1); return getOK(env); } LOGI("### connection faliled."); return getError(env,socket1); }
void SnakeNetworkClientDialog::connectServer() { okButton->setEnabled(false); okButton->setText(tr("&Connecting")); client = new SnakeNetworkClient(new QString(serverIpEdit->text()), new QString(usernameEdit->text())); connect(client, SIGNAL(getOK()), this, SLOT(showMainWindow())); connect(client, SIGNAL(getError()), this, SLOT(handleError())); }
extern "C" jstring JNICALL Java_com_iped_ipcam_gui_UdtTools_monitorCmdSocket(JNIEnv *env, jobject thiz, jstring camId,jstring rand) { LOGI("### start config monitorCmdSocket"); if (first) { LOGI("### UdtTools cmd monitor_init!"); first = 0; monitor_init(0); } char* idTmp = jstringToChar(env,camId); if(id == NULL || strcmp( idTmp, id )!=0) { socket2 = monitor_socket_fusion(idTmp); if(socket2 == NULL) { return env->NewStringUTF("cmd fusion error"); } while (1) { LOGI("### wait config to connection."); stun_sleep_ms(100); if (socket_fusion_is_usable(socket2) || socket_fusion_is_done(socket2)) { break; } } if (socket_fusion_is_usable(socket2)) { LOGI("### configf connection success.%p", socket2); return getOK(env); } } else { if(socket1 == NULL) { return env->NewStringUTF("fusion2 error"); } if (socket_fusion_is_usable(socket1)) { LOGI("### config connection success.%p", socket2); return getOK(env); } else { return Java_com_iped_ipcam_gui_UdtTools_monitorSocket(env, thiz,camId); } } LOGI("### config connection faliled."); return getError(env, socket2); }
int loop1_FP() { int size; for (;;) { size = 1; if (getOK()) break; } return size; // report here because size initialized only inside loop }
int branch1_FP() { int size; bool ok = getOK(); if (ok) { size = 1; } if (ok) { return size; // report here because size initialized only on the then-branch // above } return 0; }