Comments (5)
Attaching test files.
On Windows XP it works fine.
The problem appears only on Windows 7 for these test files.
Original comment by [email protected]
on 19 Aug 2012 at 9:18
- Changed state: Accepted
Attachments:
from cefpython.
I think I've fixed it, but need confirmation, I use XP and cannot reproduce the
bug.
Download cefpython.pyd from the repository and test it:
http://cefpython.googlecode.com/git/cefexample/cefpython.pyd
Original comment by [email protected]
on 19 Aug 2012 at 9:47
from cefpython.
My test file is fixed. Thanks.
Original comment by [email protected]
on 19 Aug 2012 at 10:51
from cefpython.
The problem with garbage data was in a function that converted CEFString to
Python string (CefStringToPyString in utils.pyx), it took the C string (a
pointer to wchar_t) from CEFString, and then converted it into char. To make
the conversion a WideCharToMultiByte() function was used, but there is one
quirk about this function. You call this func twice, first time to calculate
the bytes that need to be copied. When string is non-empty it returns the bytes
including the NUL character, so if string is 4 bytes it returns 5 bytes so that
NUL (\0) is also copied. But when string is empty it returns 0 bytes. When you
combine it with use of malloc() then you get garbage data, because malloc does
not initialize the memory, and WideCharToMultiByte does not copy the NUL
character when string is empty. The solution is to use calloc() instead of
malloc(), calloc initializes the memory with zeros.
This fix will make it into next 0.34 release.
Original comment by [email protected]
on 20 Aug 2012 at 8:22
- Changed state: Fixed
from cefpython.
Version 0.35 released, comes with a fix for this issue.
Original comment by [email protected]
on 23 Aug 2012 at 8:28
from cefpython.
Related Issues (20)
- Mouse context menu and <select> control crash app on Mac HOT 3
- Create build_all.bat and build_all.sh scripts to build multiple binary distributions in just one step HOT 1
- Cookies not flushed to disk when closing app immediately (wxpython.py) HOT 7
- Provide a single same wxpython.py example for all plattforms (Win, Linux, Mac)
- Create a simple wxPython example (wxsimple.py)
- Copy (Cmd+C) and Paste (Cmd+V) do not work in text controls on Mac HOT 2
- Mac examples exit with error code 255 HOT 3
- The default en-US locale pak file fails to load on Mac HOT 3
- Examples crash on Mac when app doesn't have permission to write to the debug.log file
- Issues with size_t => int conversions when using cef_values.h API on Win x64 platform HOT 2
- Python Wheels - DESCRIPTION.rst UNKNOWN
- Embed __version__ also in the cython generated module (cefpython_py27.pyd) HOT 1
- Create unified key mappings for all platforms HOT 8
- Add Browser.IsDevTools() HOT 1
- Expose CreateBrowser() with a callback argument that will be executed after browser was created
- The popup window and parent window can't script each other in the wxpython.py example HOT 3
- Create "chrome31" branch before updating to a newer CEF branch
- wxpython-response.py example: final url is wrong when doing redirects HOT 7
- Close the browser BEFORE the page is full loaded CEF Crashe HOT 1
- Warnings on OS X: Internals of CFAllocator not known HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cefpython.