Autore Topic: ERRORE :libc Fatal signal 11 (SIGSEGV) at 0x00007f00 (code=1)  (Letto 2921 volte)

Offline michnied

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy fame
  • Sistema operativo:
    windows xp/ Fedora
ERRORE :libc Fatal signal 11 (SIGSEGV) at 0x00007f00 (code=1)
« il: 03 Febbraio 2014, 08:52:11 CET »
0
Ciao a tutti,
provando con NDK una semplice applicazione che mi restituisce il risultato del comando "IWLIST dev POWER PERIOD", mi da il seguente errore:

libc Fatal signal 11 (SIGSEGV) at 0x00007f00 (code=1)

qualcuno mi saprebbe dire , almeno indicativamente, a cosa si potrebbe riferire tale errore?

Il codice C dovrebbe essere corretto, usato fuori da NDK funziona benissimo :
Codice (C): [Seleziona]
jstring Java_com_example_provaiwlist_ProvaIwlistActivity_funIwlist(JNIEnv *env, jobject this){

        char* iwResult;
        iwResult = (char *)malloc(50);
        iwResult = system("iwlist wlan0 power period");
        jstring result = (*env)->NewStringUTF(env, iwResult);
        free(iwResult);
        return(result);
}
Grazie anticipatamente per l'aiuto.
Michele

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:ERRORE :libc Fatal signal 11 (SIGSEGV) at 0x00007f00 (code=1)
« Risposta #1 il: 03 Febbraio 2014, 19:30:08 CET »
+1
Il puntatore ritornato dalla "malloc" viene perso, la funzione "system" ritorna un intero non un puntatore a una stringa, la funzione "free" libera una zona di memoria sicuramente non valida.

P.S. dubito fortemente sulla correttezza del codice in C e ignoro come fuori dal NDK possa funzionare benissimo.
« Ultima modifica: 03 Febbraio 2014, 19:34:01 CET da iceweasel »
adb logcat | tee /tmp/logcat | grep TAG

Offline michnied

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy fame
  • Sistema operativo:
    windows xp/ Fedora
Re:ERRORE :libc Fatal signal 11 (SIGSEGV) at 0x00007f00 (code=1)
« Risposta #2 il: 04 Febbraio 2014, 18:29:50 CET »
0
Problema risolto,
nel codice di prova ho effettivamente messo il cast nella system...... che distrattamente ho dimenticato di riportare quando l'ho usato in NDK!
Grazie