mirror of
https://github.com/weechat/weechat.git
synced 2026-07-03 08:13:14 +02:00
Revert "core, plugins: replace "%lx" by "%p" in calls to sscanf"
This reverts commit e64ab3c675.
This was causing incorrect conversion of strings "0x..." to pointers on systems
like Solaris/illumos.
And as a side effect, buffers were sometimes empty in weechat relay clients
like glowing-bear.
This commit is contained in:
@@ -39,6 +39,7 @@ spell_info_info_spell_dict_cb (const void *pointer, void *data,
|
||||
const char *arguments)
|
||||
{
|
||||
int rc;
|
||||
unsigned long value;
|
||||
struct t_gui_buffer *buffer;
|
||||
const char *buffer_full_name, *ptr_dict;
|
||||
|
||||
@@ -55,9 +56,10 @@ spell_info_info_spell_dict_cb (const void *pointer, void *data,
|
||||
buffer_full_name = NULL;
|
||||
if (strncmp (arguments, "0x", 2) == 0)
|
||||
{
|
||||
rc = sscanf (arguments, "%p", &buffer);
|
||||
if ((rc != EOF) && (rc != 0) && buffer)
|
||||
rc = sscanf (arguments, "%lx", &value);
|
||||
if ((rc != EOF) && (rc != 0) && value)
|
||||
{
|
||||
buffer = (struct t_gui_buffer *)value;
|
||||
if (weechat_hdata_check_pointer (weechat_hdata_get ("buffer"),
|
||||
NULL, buffer))
|
||||
{
|
||||
|
||||
@@ -715,6 +715,7 @@ spell_modifier_cb (const void *pointer, void *data,
|
||||
const char *modifier,
|
||||
const char *modifier_data, const char *string)
|
||||
{
|
||||
unsigned long value;
|
||||
struct t_gui_buffer *buffer;
|
||||
struct t_spell_speller_buffer *ptr_speller_buffer;
|
||||
char **result, *ptr_string, *ptr_string_orig, *pos_space;
|
||||
@@ -737,10 +738,12 @@ spell_modifier_cb (const void *pointer, void *data,
|
||||
if (!string)
|
||||
return NULL;
|
||||
|
||||
rc = sscanf (modifier_data, "%p", &buffer);
|
||||
rc = sscanf (modifier_data, "%lx", &value);
|
||||
if ((rc == EOF) || (rc == 0))
|
||||
return NULL;
|
||||
|
||||
buffer = (struct t_gui_buffer *)value;
|
||||
|
||||
/* check text during search only if option is enabled */
|
||||
if (weechat_buffer_get_integer (buffer, "text_search")
|
||||
&& !weechat_config_boolean (spell_config_check_during_search))
|
||||
|
||||
Reference in New Issue
Block a user