Compare commits

...

7 commits

Author SHA1 Message Date
Ailin Nemui
248a1591a2 tag as 1.2.1 2019-06-28 13:52:47 +02:00
ailin-nemui
27c02a2d96 Merge pull request #1058 from ailin-nemui/sasl-reconnect
copy sasl username and password values

(cherry picked from commit d23b0d22cc)
2019-06-28 13:48:28 +02:00
ailin-nemui
bb7e81438d Merge pull request #1013 from ailin-nemui/fix-1012
do not stop autolog_ignore_targets from matching itemless targets

(cherry picked from commit df532d4461)
2019-06-28 13:42:49 +02:00
ailin-nemui
fddcbe56c9 Merge pull request #1057 from ailin-nemui/entry-8bit
restore 8bit support in input entry

(cherry picked from commit 8551dd99cc)
2019-06-28 11:53:32 +02:00
ailin-nemui
309ea88252 Merge pull request #1043 from ailin-nemui/solaris10
fix realpath on old solaris

(cherry picked from commit 7654f30d04)
2019-06-28 11:51:54 +02:00
ailin-nemui
24547829e7 Merge pull request #1019 from ailin-nemui/configure-utf8proc
make utf8proc configurable

(cherry picked from commit 6242d25055)
2019-06-28 11:48:34 +02:00
ailin-nemui
bb600a6575 Merge pull request #1014 from ailin-nemui/fix-be64
fix test on Big Endian 64bit, due to pointer size mismatch

(cherry picked from commit 01ce66c684)
2019-06-28 11:46:13 +02:00
9 changed files with 79 additions and 17 deletions

21
NEWS
View file

@ -1,3 +1,24 @@
v1.2.1 2019-06-29 The Irssi team <staff@irssi.org>
! Contains all changes from 1.1.3
- Fix a test on big endian machines (#1014)
- Fix the compile time conditionality of wcwidth
implementation (#1019, gentoo#677804, #720)
- Fix /save no longer working on old Solaris (pre
POSIX.1-2008) (#1042, #1043)
- Fix regression of #764 where display of 8-bit (legacy
encoding) in the input prompt was broken (#1018,
#1057). Initial patch by Артём Курашов
v1.1.3 2019-06-29 The Irssi team <staff@irssi.org>
! Contains all changes from 1.0.8
- Fix regression of #779 where autolog_ignore_targets would
not matching itemless windows anymore (#1012, #1013)
v1.0.8 2019-06-29 The Irssi team <staff@irssi.org>
- Fix a use after free issue when sending the SASL login on
(automatic and manual) reconnects (#1055, #1058). Reported
by ilbelkyr
v1.2.0 2019-02-11 The Irssi team <staff@irssi.org>
! Contains all changes from 1.1.2
* Improved the /STATUSBAR commands (#858)

View file

@ -1,4 +1,4 @@
AC_INIT(irssi, 1.2.0)
AC_INIT(irssi, 1.2.1)
AC_CONFIG_SRCDIR([src])
AC_CONFIG_AUX_DIR(build-aux)
AC_PREREQ(2.50)
@ -181,6 +181,15 @@ AC_ARG_ENABLE(gregex,
fi,
want_gregex=yes)
AC_ARG_ENABLE(utf8proc,
[ --disable-utf8proc Build without Julia's utf8proc],
if test x$enableval = xno ; then
want_utf8proc=no
else
want_utf8proc=yes
fi,
want_utf8proc=yes)
AC_ARG_WITH(capsicum,
[ --with-capsicum Build with Capsicum support],
if test x$withval = xno; then
@ -329,7 +338,18 @@ PKG_CHECK_MODULES([OPENSSL], [openssl], [
dnl **
dnl ** utf8proc
dnl **
AC_CHECK_LIB([utf8proc], [utf8proc_version])
if test "x$want_utf8proc" != "xno"; then
AC_CHECK_HEADER([utf8proc.h], [
AC_CHECK_LIB([utf8proc], [utf8proc_version], [
want_utf8proc=yes
LIBS="$LIBS -lutf8proc"
], [
want_utf8proc="no, library not found"
])
], [
want_utf8proc="no, library header not found"
])
fi
dnl **
dnl ** curses checks
@ -821,7 +841,7 @@ echo "Building with 64bit DCC support .. : $offt_64bit"
echo "Building with true color support.. : $want_truecolor"
echo "Building with GRegex ............. : $want_gregex"
echo "Building with Capsicum ........... : $want_capsicum"
echo "Building with utf8proc ........... : $ac_cv_lib_utf8proc_utf8proc_version"
echo "Building with utf8proc ........... : $want_utf8proc"
if test "x$want_otr" = "xstatic"; then
echo "Building with OTR support ........ : static (in irssi binary)"
elif test "x$want_otr" = "xmodule"; then

View file

@ -486,9 +486,6 @@ gboolean strarray_find_dest(char **array, const TEXT_DEST_REC *dest)
strarray_find(array, dest->window->name) != -1 ? TRUE : FALSE;
item = window_item_find_window(dest->window, dest->server, dest->target);
if (item == NULL) {
return FALSE;
}
server_tag_len = dest->server_tag != NULL ? strlen(dest->server_tag) : 0;
for (tmp = array; *tmp != NULL; tmp++) {
@ -507,11 +504,11 @@ gboolean strarray_find_dest(char **array, const TEXT_DEST_REC *dest)
return TRUE;
} else if (g_ascii_strcasecmp(str, dest->target) == 0) {
return TRUE;
} else if (item->type == query_type &&
} else if (item != NULL && item->type == query_type &&
g_strcmp0(str, dest->target[0] == '=' ? "::dccqueries" :
"::queries") == 0) {
return TRUE;
} else if (item->type == channel_type &&
} else if (item != NULL && item->type == channel_type &&
g_strcmp0(str, "::channels") == 0) {
return TRUE;
}

View file

@ -379,11 +379,19 @@ static void gui_entry_draw_from(GUI_ENTRY_REC *entry, int pos)
if (new_xpos > end_xpos)
break;
if (entry->hidden)
if (entry->hidden) {
g_string_append_c(str, ' ');
else if (unichar_isprint(c))
g_string_append_unichar(str, c);
else {
} else if (unichar_isprint(c)) {
if (entry->utf8) {
g_string_append_unichar(str, c);
} else if (term_type == TERM_TYPE_BIG5) {
if(c > 0xff)
g_string_append_c(str, (c >> 8) & 0xff);
g_string_append_c(str, c & 0xff);
} else {
g_string_append_c(str, c);
}
} else {
g_string_append_c(str, 4);
g_string_append_c(str, FORMAT_STYLE_REVERSE);
g_string_append_c(str, (c & 127)+'A'-1);

View file

@ -75,6 +75,8 @@ static void destroy_server_connect(SERVER_CONNECT_REC *conn)
g_free_not_null(ircconn->usermode);
g_free_not_null(ircconn->alternate_nick);
g_free_not_null(ircconn->sasl_username);
g_free_not_null(ircconn->sasl_password);
}
void irc_core_init(void)

View file

@ -49,8 +49,8 @@ static void sig_server_connect_copy(SERVER_CONNECT_REC **dest,
rec->usermode = g_strdup(src->usermode);
rec->alternate_nick = g_strdup(src->alternate_nick);
rec->sasl_mechanism = src->sasl_mechanism;
rec->sasl_username = src->sasl_username;
rec->sasl_password = src->sasl_password;
rec->sasl_username = g_strdup(src->sasl_username);
rec->sasl_password = g_strdup(src->sasl_password);
*dest = (SERVER_CONNECT_REC *) rec;
}

View file

@ -101,8 +101,8 @@ static void sig_server_setup_fill_chatnet(IRC_SERVER_CONNECT_REC *conn,
conn->sasl_mechanism = SASL_MECHANISM_PLAIN;
if (ircnet->sasl_username != NULL && *ircnet->sasl_username &&
ircnet->sasl_password != NULL && *ircnet->sasl_password) {
conn->sasl_username = ircnet->sasl_username;
conn->sasl_password = ircnet->sasl_password;
conn->sasl_username = g_strdup(ircnet->sasl_username);
conn->sasl_password = g_strdup(ircnet->sasl_password);
} else
g_warning("The fields sasl_username and sasl_password are either missing or empty");
}

View file

@ -315,6 +315,15 @@ int config_write(CONFIG_REC *rec, const char *fname, int create_mode)
/* expand all symlinks; else we may replace a symlink with a regular file */
dest_name = realpath(base_name, NULL);
if (errno == EINVAL) {
/* variable path length not supported by glibc < 2.3, Solaris < 11 */
char resolved_path[PATH_MAX] = { 0 };
errno = 0;
if ((dest_name = realpath(base_name, resolved_path)) != NULL) {
dest_name = g_strdup(dest_name);
}
}
if (dest_name == NULL) {
if (errno == ENOENT) {
dest_name = g_strdup(base_name);

View file

@ -54,7 +54,12 @@ static void test_paste_join_multiline(const paste_join_multiline_test_case *test
g_test_message("INPUT: \"%s\"", (t1 = g_strescape(test->input, NULL)));
g_free(t1);
buffer->data = (char *) g_utf8_to_ucs4_fast(test->input, -1, (glong *) &buffer->len);
{
glong buf_len;
buffer->data = (char *) g_utf8_to_ucs4_fast(test->input, -1, &buf_len);
buffer->len = buf_len;
}
paste_buffer_join_lines(buffer);
resultstr = g_ucs4_to_utf8((unichar *) buffer->data, buffer->len, NULL, NULL, NULL);