Michael Stapelberg
c25bee0ffc
Bugfix: check bounds before accessing memory
...
This fixes the following issue when having an error early in the config file:
==1562==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6220000180ff at pc 0x55c837edb1d3 bp 0x7ffee7534650 sp 0x7ffee7534648
READ of size 1 at 0x6220000180ff thread T0
#0 0x55c837edb1d2 in start_of_line ../../i3/src/config_parser.c:238
#1 0x55c837edc96f in parse_config ../../i3/src/config_parser.c:493
#2 0x55c837edf527 in parse_file ../../i3/src/config_parser.c:1091
#3 0x55c837ecf14b in parse_configuration ../../i3/src/config.c:65
#4 0x55c837ed1ef4 in load_configuration ../../i3/src/config.c:230
#5 0x55c837f0a8d0 in main ../../i3/src/main.c:539
#6 0x7fb63ae042b0 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202b0)
#7 0x55c837e95eb9 in _start (/home/michael/i3/build/i3+0x4beb9)
0x6220000180ff is located 1 bytes to the left of 5165-byte region [0x622000018100,0x62200001952d)
allocated by thread T0 here:
#0 0x7fb63e590cf8 in malloc (/usr/lib/x86_64-linux-gnu/libasan.so.3+0xc1cf8)
#1 0x55c837f59aa6 in smalloc ../../i3/libi3/safewrappers.c:24
#2 0x55c837edef45 in parse_file ../../i3/src/config_parser.c:1029
#3 0x55c837ecf14b in parse_configuration ../../i3/src/config.c:65
#4 0x55c837ed1ef4 in load_configuration ../../i3/src/config.c:230
#5 0x55c837f0a8d0 in main ../../i3/src/main.c:539
#6 0x7fb63ae042b0 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202b0)
2017-08-20 12:54:49 +02:00
Ingo Bürk
ad8bb41686
Merge pull request #2863 from stapelberg/fixfreeze
...
i3bar: Bugfix: avoid freeze after VisibilityNotify
2017-08-20 12:25:06 +02:00
Michael Stapelberg
8106ae7923
i3bar: Bugfix: avoid freeze after VisibilityNotify
...
fixes #2790
2017-08-20 12:16:43 +02:00
Michael Stapelberg
4d93d26484
Bugfix: consider inactive monitors when querying ( #2862 )
...
fixes #2815
fixes #2594
2017-08-20 00:19:45 +02:00
Michael Stapelberg
e6682f862b
Merge pull request #2861 from stapelberg/ipcconfig
...
Introduce the GET_CONFIG IPC request
2017-08-19 19:23:02 +02:00
Michael Stapelberg
d14c9bd6af
Bump AnyEvent-I3 to 0.18
2017-08-19 19:08:53 +02:00
Michael Stapelberg
a6d8ed9b1a
Introduce the GET_CONFIG IPC request
...
This introduces memory usage by one copy of the config file, which is an
acceptable trade-off for being able to easily revert data loss.
The default config is 6KB, user configs will be in the same ballpark.
fixes #2856
2017-08-19 19:08:51 +02:00
Michael Stapelberg
6bb9c9e708
Makefile.am: fix anyevent-i3.stamp dependencies
2017-08-19 19:07:13 +02:00
Michael Stapelberg
af24f07020
Merge pull request #2860 from stapelberg/anyevent-i3
...
Merge the AnyEvent-I3 repository into i3/AnyEvent-I3
2017-08-19 18:32:04 +02:00
Ingo Bürk
65dde35bbf
Merge pull request #2859 from stapelberg/fixtests
...
Fix tests
2017-08-19 18:19:51 +02:00
Michael Stapelberg
a91544b5b3
testcases: remove external AnyEvent::I3 dependency
2017-08-19 18:13:19 +02:00
Michael Stapelberg
062ecdb0b5
Move to AnyEvent-I3
2017-08-19 18:13:19 +02:00
Michael Stapelberg
db35244ee7
tag 0.17
2017-08-19 18:13:19 +02:00
Michael Stapelberg
f7645336cb
use lib '.' for Perl 5.25.11+
...
see also https://rt.cpan.org/Ticket/Display.html?id=120943
2017-08-19 18:13:19 +02:00
Tony Crisci
0940f7b9d1
Add the shutdown event ( #2 )
...
The shutdown event is triggered when the ipc shuts down because of
either a restart or when i3 exits.
2017-08-19 18:13:19 +02:00
Michael Stapelberg
538c50c8ef
support the barconfig_update and binding event, tag 0.16
2017-08-19 18:13:19 +02:00
Michael Stapelberg
bd1c33588d
support the window event, tag 0.15
2017-08-19 18:13:19 +02:00
Michael Stapelberg
85e98d8d7d
fix doc error: missing opening brace (Thanks bitonic)
2017-08-19 18:13:19 +02:00
Michael Stapelberg
b008d8b2e9
0.14: add support for the mode event
2017-08-19 18:13:19 +02:00
Michael Stapelberg
879266c40b
update Changes file
2017-08-19 18:13:19 +02:00
Michael Stapelberg
c3538c4cad
bump version to 0.13
2017-08-19 18:13:19 +02:00
Michael Stapelberg
64fddbe41b
Implement the GET_VERSION request (with a fallback to i3 --version)
2017-08-19 18:13:19 +02:00
Michael Stapelberg
d8ad62c36f
add a more involved example to the SYNOPSIS
2017-08-19 18:13:19 +02:00
Michael Stapelberg
3a7f5d7912
bump version to 0.12
2017-08-19 18:13:19 +02:00
Michael Stapelberg
b4058790cc
remove relative directories from $ENV{PATH} (for taint mode)
...
Otherwise, the module will die when you use it with PATH=$PATH:. (as is
the case on the OpenBSD cpan testers).
2017-08-19 18:13:19 +02:00
Michael Stapelberg
af6f180c35
bump version to 0.11
2017-08-19 18:13:19 +02:00
Michael Stapelberg
4c97c94a0a
taint mode fix for FreeBSD
2017-08-19 18:13:19 +02:00
Michael Stapelberg
2ec58b40f8
bump version to 0.10
2017-08-19 18:13:19 +02:00
Michael Stapelberg
a6a0e11718
update copyright and URL/email
2017-08-19 18:13:19 +02:00
Michael Stapelberg
476e41ddc3
use i3 --get-socketpath by default for determining the socket path
...
This was introduced in i3 v4.1 (released 2011-11-11, so should be
widespread enough by now).
2017-08-19 18:13:19 +02:00
Michael Stapelberg
7021bb4315
Revert "implement the GET_LOG_MARKERS request" (no longer available)
...
This reverts commit 7e2ed06447af5e3b49af69dd24e2a5dec373ad9c.
2017-08-19 18:13:19 +02:00
Michael Stapelberg
3a9024de63
Bugfix: Also delete callbacks which are triggered due to an error
2017-08-19 18:13:19 +02:00
Michael Stapelberg
ead1557468
implement the GET_LOG_MARKERS request
...
Requires i3 version 966c654112
or later.
2017-08-19 18:13:19 +02:00
Michael Stapelberg
23beaa83ea
Bump version to 0.09
2017-08-19 18:13:19 +02:00
Michael Stapelberg
7a934b94dd
Add TYPE_GET_MARKS and accompanying sugar method
2017-08-19 18:13:19 +02:00
Michael Stapelberg
d7bd645863
Fix documentation for get_marks (s/tree/marks)
2017-08-19 18:13:19 +02:00
Michael Stapelberg
9054711650
Bump version to 0.08
2017-08-19 18:13:19 +02:00
Michael Stapelberg
1a272f96a5
Implement support for the TYPE_GET_MARKS request, add ->get_marks sugar method
2017-08-19 18:13:19 +02:00
Michael Stapelberg
6274959029
Bugfix: The synopsis mentioned ->workspaces, but it’s ->get_workspaces
2017-08-19 18:13:19 +02:00
Michael Stapelberg
7176a7074b
introduce get_tree request (tree branch only)
2017-08-19 18:13:19 +02:00
Michael Stapelberg
a3a42f30e1
Add check to Makefile to abort in a Windows environment (neither i3 nor unix sockets available)
...
Hopefully, this will stop CPAN Testers emails about failing tests on windows.
2017-08-19 18:13:19 +02:00
Michael Stapelberg
da94674f8f
bump version
2017-08-19 18:13:19 +02:00
Michael Stapelberg
192ef6a827
use getpwuid() to resolve ~ in socket paths instead of glob()
...
This fixes a warning about using a tainted variable (broke the
tests with newer perl versions).
2017-08-19 18:13:19 +02:00
Michael Stapelberg
e656864838
use new default ipc-socket path, glob() path, bump version
2017-08-19 18:13:19 +02:00
Michael Stapelberg
5d1bb0b0ce
Bump version for new CPAN upload, fix MANIFEST
2017-08-19 18:13:19 +02:00
Michael Stapelberg
f12facc184
bump version to 0.02, update MANIFEST
2017-08-19 18:13:19 +02:00
Michael Stapelberg
b9c83fbd26
add testcase for sugar methods
2017-08-19 18:13:19 +02:00
Michael Stapelberg
e34675c3c7
Implement _error callback
2017-08-19 18:13:19 +02:00
Michael Stapelberg
d137f83452
Add sugar methods for easier usage
2017-08-19 18:13:19 +02:00
Michael Stapelberg
45eef6bdf7
Remove obsolete paragraph about the need for a second connection
...
Due to the event-based handling of incoming data from i3 we do not
suffer from this problem.
2017-08-19 18:13:19 +02:00