🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.python
Article #27662

[C] PyUnicode_FromFormat(%U) -crash

#27662
From: kenubi
Date: Wed, 15 Sep 2010 14:58
30 lines
1636 bytes
Mam dziwny objaw (python 3.1.2 / gcc 4.5.0).

w module pomocniczym w C używam ~takiej konstrukcji:

static PyObject *w_cudzyslowy (PyObject *self,PyObject *uo)
{
PyObject *tmp;
tmp = PyUnicode_FromFormat("'%U'", uo);
return tmp;
}

uo - jest oczywiście obiektem Unicode.

I program po chwili upada - naruszenie ochrony pamięci.
Sprawdzam banalnie wyrzucajac sobie wartosci (bo może jakieś PL znaczki(?)).

 print(type(value))
<class 'str'>
 print("<%s>" % value)
<>

util.w_cudzyslow('dupa')
"'dupa'"
util.w_cudzyslow('')
Naruszenie ochrony pamieci.
"SystemError:Object/unicodeobject:438:bad argument to internal function"


Najwyraźniej dla pustego stringu (unicode) następuje upadek (dla "%U" też)  
czy ja czegoś nie wiem?
Technical Details
Message-ID: <4c90de51$0$22813$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!weretis.net!feeder4.news.weretis.net!zen.net.uk!dedekind.zen.co.uk!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!weretis.net!feeder4.news.weretis.net!zen.net.uk!dedekind.zen.co.uk!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: kenubi <nono@no.pl>
Organization: none
Date: Wed, 15 Sep 2010 16:58:49 +0200
User-Agent: KNode/4.4.3
Newsgroups: pl.comp.lang.python
Subject: [C] PyUnicode_FromFormat(%U) -crash
Followup-To: pl.comp.lang.python
MIME-Version: 1.0
Lines: 38
Message-ID: <4c90de51$0$22813$65785112@news.neostrada.pl>
NNTP-Posting-Host: 83.17.40.134
X-Trace: 1284562513 unt-rea-b-01.news.neostrada.pl 22813 83.17.40.134:54572
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit