From: C. <dig...@us...> - 2000-12-03 09:36:17
|
Eae coders ? Marcelão, depois dakele mail teu mano, eu parei prá pensar nos trecos aki de novo... Cara, a solução era tão óbvia... :) O problema todo se resumia no fscanf que não pegava o caracter depois da string (o '\n') ... então vamos "forçar" para que ele pegue "oxente" ... hehehe Tipo: gchar buffer[64], temp[100], control_ch; fscanf (pipe_ptr, "%s%c", buffer, &control_ch); Pronto!!! Depois é só analisar se o caractere depois da string é um \n e tomar as medidas cabíveis... :P Vejam só como ficou a get_messages: gint get_messages(gpointer data) { gchar control_ch; /* Caracter de controle */ if (fscanf(pipe_ptr, "%s%c", buffer, &control_ch)) { if (control_ch == '\n') { /* monta o último pedaço e manda prá tela */ strcat (temp, buffer); mostra_msg(temp); /* Manda prá tela */ memset (temp, 0x00, 100); /* Limpa a var */ } else { /* monta mais um pedaço da string */ strcat (temp, buffer); strcat (temp, " "); } } else { gtk_timeout_remove(tmp_timer); tmp_timer = 0; pclose(pipe_ptr); flag = 1; /* Conectado */ return 0; } return 1; } Simples, não ??? Tá resolvido o problema... :) Mas Alex, eu ainda quero a nova versão dos scripts manow... :PPP Vc ainda se lembra das alterações que deverão estar na nova versão ??? (a gente discutiu isso pelo icq outro dia... hehehe) Valeu aí coders, que isso sirva de lição... hehehehe às vezes a resposta está na nossa cara e a gente não vê... hehehehe []'s -- André Casteliano Analista de Sistemas +-=-=[ dig...@us...]=-=-+ [ Linux User: # 178853 Machine: # 79923 ] [ Linux Heavy User - Powered by Slackware 7.1 ] [ http://www.geocities.com/andre_casteliano/ ] +-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+ [ LinuxCall - The Linux Dialer ] [ http://linuxcall.sourceforge.net ] +-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+ |