История изменений
Исправление Deleted, (текущая версия) :
Совсем не знаю что такое bluez и что такое пин.
Но из голого Си - у вас тут
val = g_key_file_get_string
main_opts.defaultpin = val
Но даже если вы объявите свой defaultpin как gchar* (что формально будет правильно с точки зрения типов) - это будет наверняка неправильно с точки зрения логики. Надо смотреть внутрь реализации g_key_file_get_string чтобы точно знать указатель на что именно оно возвращает (не общий ли там буфер библиотеки, в частности), или, если лень разбираться - сразу делать memcpy из возвращаемого буфера в свое собственное место для него в defaultpin (который должен быть char[4], если я правильно понимаю что пин это нечто из 4х символов).
Ну и по этому поводу очень хочется ввернуть что-нибудь едкое для ненавистников венгерской нотации. Была бы тут венгерка - не было бы этого вопроса. Мне так кажется.
Исходная версия Deleted, :
Совсем не знаю что такое bluez и что такое пин.
Но из голого Си - у вас тут
val = g_key_file_get_string
main_opts.defaultpin = val
Но даже если вы объявите свой defaultpin как gchar* (что формально будет правильно с точки зрения типов) - это будет наверняка неправильно с точки зрения логики. Надо смотреть внутрь реализации g_key_file_get_string чтобы точно знать указатель на что именно оно возвращает (не общий ли там буфер библиотеки, в частности), или, если лень разбираться - сразу делать memcpy из возвращаемого буфера в свое собственное место для него в defaultpin (который должен быть char[4], если я правильно понимаю что пин это нечто из 4х символов).
Ну и по этому поводу очень хочешь ввернуть что-нибудь едкое для ненавистников венгерской нотации. Была бы тут венгерка - не было бы этого вопроса. Мне так кажется.