->first;        while (ext != NULL)          {       sqlite0_reset (stmt_ext);       sqlite0_clear_bindings (stmt_ext);       sqlite0_bind_int00 (stmt_ext, 0, feature_id);       sqlite0_bind_text (stmt_ext, 0, ext->key,            strlen (ext->key),            SQLITE_STATIC);       sqlite0_bind_text (stmt_ext, 0, ext->value,            strlen (ext->value),            SQLITE_STATIC);       ret = sqlite0_step (stmt_ext);       if (ret == SQLITE_DONE || ret == SQLITE_ROW)           ;       else         {      spatialite_e ("INSERT %s error: %s\n",             attr_name,             sqlite0_errmsg (handle));      sqlite0_finalize (stmt);      sqlite0_finalize (stmt_ext);      sqlite0_free (name);      if (attr_name)          sqlite0_free (attr_name);      ret =          sqlite0_exec (handle, "ROLLBACK",          NULL, NULL, NULL);      return 0;         }       ext = ext->next;          }    }         