Emmanuel Gil Peyrot
332a5c2553
Move the src directory to poezio, for better cython compatibility.
2016-06-11 20:49:43 +01:00
mathieui
3fb3d8db3d
Fix memleaks in pooptmodule.cut_text (ref #1914 )
...
- we need to decrement the refcount after giving the tuple to the
retlist in order to transfer ownership
The example script below will quickly take gigabytes of ram with the
old module, while the new will not take noticeably more memory.
The leak is not very visible on launch, because we “only” leaked each
tuple returned, and (int, int) is not heavy. However, after weeks of
use and many messages, the memory still isn’t freed and it shows.
import poopt
import gc
a = 'coucouco ' * 1000
for i in range(100000):
if not (i % 10000):
print(i)
poopt.cut_text(a, 50)
2014-04-27 21:38:29 +02:00
mathieui
890945d037
Fix #2334 (wrong character length for formatting chars)
2013-07-31 23:56:49 +02:00
Florent Le Coz
9b51377185
Correctly use Py_ssize_t instead of int, fix a segfault on some architectures
2013-07-07 20:25:58 +02:00
Florent Le Coz
1a6dbad881
Better comments in poopt
2013-06-27 15:54:19 +02:00
Florent Le Coz
1ae7ff10d3
Nicer comments
2013-06-25 01:18:28 +02:00
Florent Le Coz
b7fbfb7f47
Aaaand that’s static
2013-06-25 01:17:20 +02:00
Florent Le Coz
f8c0d12750
Workaround for a bug (?) where wcwidth returns -1 for valid printable chars
...
For example 😆
2013-06-25 01:08:16 +02:00
Florent Le Coz
d81568eebe
Use a logical order of arguments in the poopt functions, now
2013-06-20 23:28:40 +02:00
Florent Le Coz
ee0c29ada1
Use the correct arguments in PyArg_ParseTuple
2013-06-20 23:26:29 +02:00
Florent Le Coz
7d555a62f2
Little logic change
2013-06-20 23:25:53 +02:00
Florent Le Coz
da6c11603c
Add a poopt function to cut a string by the number of columns it takes
2013-06-20 22:17:43 +02:00
Florent Le Coz
a92163d173
Fix some compilation warnings in the poopt module
2013-06-20 22:06:33 +02:00
Florent Le Coz
cbe0007249
Exposes the wcswidth function in the poopt module
...
see #2142
2013-06-19 22:19:08 +02:00
Florent Le Coz
0bcd420602
Consider the number of columns of each characters in the poopt module
...
Some characters take 0 columns, others take 1 or 2 (full-width characters)
fixes #2142
2013-06-19 22:18:50 +02:00
Florent Le Coz
463ec5ca0d
Accept NULL bytes in strings to be cut by the poopt module
...
fix #2296
2013-06-07 00:04:01 +02:00
Florent Le Coz
5db9144303
Fix a byte value in the utf-8 decoding in poopt.
2012-11-30 15:14:21 +01:00
Florent Le Coz
52fd54d2ff
Remove this usell ++-- from poopt
2011-11-23 19:48:12 +01:00
Florent Le Coz
1ccfd09552
poopt now handles correctly the size of the chars by jumping
...
the color attributes properly and ignoring their length.
2011-11-08 01:52:39 +01:00
Florent Le Coz
c332732d13
Clean a little bit the poopt module, and fix some comments
2011-09-14 13:59:25 +02:00
Florent Le Coz
96794a4e49
Change license to zlib (MIT sucks :()
2011-09-11 17:10:05 +02:00
Florent Le Coz
fa5b5fc45d
Make it work. MAY segfault. Need intensive testing.
...
Should be A. LOT. FASTER. though.
2011-09-09 18:43:20 +02:00
Florent Le Coz
2e04c5c77e
c code that doesn’t work
2011-09-08 17:05:02 +02:00