Boris Faure
7b5a9b74bc
termptyesc: use macro to restrict field value
2017-05-17 23:40:19 +02:00
Boris Faure
490a065fb1
termptyesc: _csi_arg_get() could be called with nothing to read
...
Could be the case when an error was already found while decoding the
stream
2017-05-17 23:38:28 +02:00
Boris Faure
0517be32f4
termptyesc: no logging when fuzzing
2017-05-17 23:33:06 +02:00
Boris Faure
ce490ededc
termptyesc: fix issue with tmux introduced by previous commit
2017-05-17 21:49:52 +02:00
Boris Faure
63d65ed4bb
termptyesc: restrict values on scrolling regions
2017-05-16 22:48:18 +02:00
Boris Faure
17e5e1be55
termpyesc: only compute logging content if it's going to be printed
2017-05-15 23:54:25 +02:00
Boris Faure
bd6c81ed39
termptyesc: restrict CSI values to avoid denial of service
2017-05-15 22:34:01 +02:00
Boris Faure
2b47545fac
termptyesc: ensure colors are valid
2017-05-15 21:56:54 +02:00
Boris Faure
99f55b7bbc
termptyesc: support DECSED3 to erase the backlog. Closes T3713
2016-12-20 22:43:37 +01:00
Boris Faure
b9d5a55aa4
termptyesc: correctly handle tab forward. Closes T4992
2016-12-18 19:17:42 +01:00
Boris Faure
f3dd6f62fb
termpty: Tab markers are the same for each line. Ref 4992
2016-12-18 18:48:03 +01:00
Boris Faure
82d9ead6f2
termptyesc: handle correctly Character Tabulation Set (HTS). Ref T4992
2016-12-15 23:11:22 +01:00
Boris Faure
7c720058a1
termptyesc: add some debug
2016-12-15 23:11:22 +01:00
Boris Faure
fae0d7ccee
termptyesc: handle correctly Cursor Back Tab. Ref T4992
2016-12-15 23:11:22 +01:00
Boris Faure
f4263d5098
termptyesc: add missing break (CID1365404)
2016-11-07 11:35:50 +01:00
Boris Faure
566c6d3680
termpty: correctly handle saving cursor + switching to/from altbuf
...
Closes T4718
2016-10-18 00:15:06 +02:00
Boris Faure
76f1bf4342
prefix EINA_UNUSED parameters with an underscore
...
and fix related issues
2016-10-05 22:00:22 +02:00
Boris Faure
0c466d767c
Merge remote-tracking branch 'raboof/comment'
2016-05-21 22:39:14 +02:00
Boris Faure
f33aa07b81
termptyesc: fix signedness comparison
2016-05-21 22:38:39 +02:00
Arnout Engelen
9a501470aa
Fix comment for 't' escape sequence
2016-05-21 15:15:19 +02:00
Arnout Engelen
ef8ee3fbda
Allow font size to be updated via escape sequence
2016-05-21 14:53:17 +02:00
José Roberto de Souza
ae7e96633a
Allow user to set the title of the each tab
2016-03-04 11:34:24 -03:00
Boris Faure
a0c249e6ca
fix crash when running tyfuzz. not in terminology
2015-11-14 21:26:37 +01:00
Boris Faure
4913364a22
fix int overflow
2015-11-08 13:06:13 +01:00
Boris Faure
9c4167f74f
always support double-width
2015-09-19 16:23:41 +02:00
Boris Faure
2b3eda694f
always support italic
2015-09-19 16:18:17 +02:00
Boris Faure
3a7238978e
turn error messages about unhandled escape codes into warnings
2015-09-08 21:59:11 +02:00
Boris Faure
144e0b5068
add option to disable terminology escape codes that could be considered
...
security issues by some
They are enabled by default.
2015-08-23 20:57:49 +02:00
Boris Faure
7fd86d8968
warn about window operations' escape codes being not supported
2015-08-17 23:18:50 +02:00
Boris Faure
b80bedc7c2
do not report unsanitized input. See CVE-2003-0063
2015-08-17 23:18:49 +02:00
Boris Faure
f40c63bbb6
typo
2015-08-03 20:52:54 +02:00
Jean-Philippe Andre
09b4fddf84
escapes: pretty-print some escapse and avoid ESC in debug logs
...
ERR("Hello '%c'", ESC) would result in "Hello '\033'" which means
the parent terminal (another terminology, maybe) would then try to
interpret ' as an escape char (ESC is \033 or 0x1b), and so it would
then forward more escapes to the parent.
Also, avoid printing BEL (and, well, beeping) when we are just
printing an error log.
I believe all those "Unhandled escape" logs should go to WRN or higher
log levels. Any thoughts, @billiob ?
See T2506 (for the test file)
2015-06-24 13:46:48 +09:00
Boris Faure
681bb029c2
ensure cursor coordinates are always valid, 2nd version
2015-06-03 23:02:31 +02:00
Carsten Haitzler
074eece5f7
Revert "ensure cursor coordinates are always valid"
...
This reverts commit 1f3f779258
.
this breaks terminal scrolling entirely! can't scroll anymore at all
in standard shell. just try a simple: find / -print
2015-06-03 15:00:13 +09:00
Boris Faure
1f3f779258
ensure cursor coordinates are always valid
2015-06-02 22:48:50 +02:00
Boris Faure
c86b35309c
rename a bunch of _termpty_*() to termpty_*()
2015-06-02 21:47:06 +02:00
Boris Faure
be62d87f89
separate "termstate" from cursor state and screens. Closes T725
2015-04-23 20:02:53 +02:00
Boris Faure
b4ba773e17
fix CSI DECSET 1049. Should fix T725
2015-03-01 17:20:18 +01:00
Boris Faure
f13d9ad111
fix compilation on solaris
2015-02-23 22:20:18 +01:00
Boris Faure
296cdcd102
usual round of fixes to make it compile with efl 1.7
2015-02-14 12:08:50 +01:00
Boris Faure
87d653ea4d
add xterm 777 notification support. Closes T1765
2015-01-12 23:13:43 +01:00
Boris Faure
36e5ca2165
"handle" HTS
2015-01-10 21:02:04 +01:00
Boris Faure
da809eb023
"handle" TBC
2015-01-10 21:02:04 +01:00
Boris Faure
cbc92a55fc
Fix screen mangling from prompt redraws on resize. Closes T1193
...
There are still some oddities because the shell doesn't expect us to
reflow.
Let's say we have the following where X is the cursor.
+-------+
|foobar$|
|X |
+-------+
Here, the shell explicitly told us to go to a new line after '$'. We don't
consider '$' is on the same line as 'foobar'.
Decrease the width of that window.
+------+
|foobar|
|$ |
|X |
+------+
Let the shell know the new size. It decides to redraw the prompt. It
remembers it told us to go to a new line, so the first thing it tells us
is to go one line up: to '$' and not 'foobar'. Then it tells us to clear
the screen downward from there and to print "foobar$" (and go to new
line).
Thus we have the following:
+------+
|foobar|
|foobar|
|$ |
|X |
+------+
2014-12-07 23:51:23 +01:00
Boris Faure
caed00cc1f
fix segfault due to using isdigit with non unsigned char value. Closes T1625
...
Also rename _termpty_handle_seq() to termpty_handle_seq() since it's not static.
2014-09-15 23:10:55 +02:00
Boris Faure
fd1e4ffd45
fix segfault when decoding buggy xterm sequence. cf T1625
2014-09-04 20:45:02 +02:00
Boris Faure
6c50375f26
Party time! be able to set foreground color
...
Reset is not yet implemented for that…
Idea is from http://www.reddit.com/r/linux/comments/2ds0he/xterm_party/
2014-08-17 22:20:40 +02:00
Boris Faure
5dfb63a14a
handle queries on some xterm escape codes
2014-08-17 17:44:19 +02:00
Boris Faure
61050bd7cc
clean up xterm escape codes handling
2014-08-17 17:32:57 +02:00
Boris Faure
9a16eb57a1
handle some DSR: the cursor position reports
2014-08-14 21:48:26 +02:00