New submission from Facundo Batista: In the doc it says:
""" Assigning a new value to instances of the pointer types c_char_p, c_wchar_p, and c_void_p changes the memory location they point to, not the contents of the memory block [...]. >>> s = "Hello, World" >>> c_s = c_wchar_p(s) >>> print(c_s) c_wchar_p('Hello, World') >>> c_s.value = "Hi, there" >>> print(c_s) c_wchar_p('Hi, there') >>> print(s) # first object is unchanged Hello, World >>> """ However, c_s it's not getting "Hi, there" as "the memory location it points to", otherwise next access will surely segfault. OTOH, if it *does* change the memory location, but the value is cached locally, which is the point of letting it change the memory location? Shouldn't it raise AttributeError or something? Thanks! ---------- components: ctypes messages: 170518 nosy: facundobatista priority: normal severity: normal status: open title: Assigning new values to instance of pointer types does not check validity type: behavior versions: Python 3.2 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue15947> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com