forked from enlightenment/enlightenment
wl_screenshot: Fix eina_file_mkstemp usage.
In my previous commit I did not took into account that ein_file_mkstemp does not alter the given filename. This is different from mkstemp and I missed that. We now ask for the new filename and use it instead.
This commit is contained in:
parent
46ee3c3226
commit
ab82c45a5d
|
@ -219,15 +219,16 @@ static struct wl_buffer *
|
|||
_create_shm_buffer(struct wl_shm *_shm, int width, int height, void **data_out)
|
||||
{
|
||||
char filename[] = "wayland-shm-XXXXXX";
|
||||
Eina_Tmpstr *tmpfile = NULL;
|
||||
struct wl_shm_pool *pool;
|
||||
struct wl_buffer *buffer;
|
||||
int fd, size, stride;
|
||||
void *data;
|
||||
|
||||
fd = eina_file_mkstemp(filename, NULL);
|
||||
fd = eina_file_mkstemp(filename, &tmpfile);
|
||||
if (fd < 0)
|
||||
{
|
||||
fprintf(stderr, "open %s failed: %m\n", filename);
|
||||
fprintf(stderr, "open %s failed: %m\n", tmpfile);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -241,7 +242,8 @@ _create_shm_buffer(struct wl_shm *_shm, int width, int height, void **data_out)
|
|||
}
|
||||
|
||||
data = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
|
||||
unlink(filename);
|
||||
unlink(tmpfile);
|
||||
eina_tmpstr_del(tmpfile);
|
||||
|
||||
if (data == MAP_FAILED)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue