Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
nx-libs
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
dimbor
nx-libs
Commits
e440e722
Commit
e440e722
authored
Jun 20, 2019
by
Ulrich Sibiller
Committed by
Mike Gabriel
Jun 22, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
compext/Png.c: simplify srcBuf allocation
parent
d4882419
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
30 deletions
+13
-30
Png.c
nx-X11/programs/Xserver/hw/nxagent/compext/Png.c
+13
-30
No files found.
nx-X11/programs/Xserver/hw/nxagent/compext/Png.c
View file @
e440e722
...
...
@@ -481,47 +481,23 @@ char *PngCompressData(XImage *image, int *compressed_size)
return
NULL
;
}
int
count
;
if
(
color_type
==
PNG_COLOR_TYPE_PALETTE
)
{
srcBuf
=
(
CARD8
*
)
malloc
(
w
*
sizeof
(
CARD8
));
if
(
srcBuf
==
NULL
)
{
#ifdef PANIC
fprintf
(
stderr
,
"******PngCompressData: PANIC! Cannot allocate [%d] bytes.
\n
"
,
(
int
)
(
w
*
sizeof
(
CARD8
)));
#endif
free
(
image_index
);
return
NULL
;
}
/*
* TODO: Be sure the padded bytes are cleaned.
* It would be better to set to zero the bytes
* that are not aligned to the word boundary
* at the end of the procedure.
*/
memset
(
srcBuf
,
0
,
w
*
sizeof
(
CARD8
));
count
=
w
;
}
else
{
srcBuf
=
(
CARD8
*
)
malloc
(
w
*
3
*
sizeof
(
CARD8
));
/*
* TODO: See above.
*/
memset
(
srcBuf
,
0
,
w
*
3
*
sizeof
(
CARD8
));
count
=
3
*
w
;
}
srcBuf
=
(
CARD8
*
)
calloc
(
count
,
sizeof
(
CARD8
));
if
(
srcBuf
==
NULL
)
{
#ifdef PANIC
fprintf
(
stderr
,
"******PngCompressData: PANIC! Cannot allocate [%d] bytes.
\n
"
,
w
*
3
);
(
int
)
(
count
*
sizeof
(
CARD8
))
);
#endif
free
(
pngCompBuf
);
...
...
@@ -530,6 +506,13 @@ char *PngCompressData(XImage *image, int *compressed_size)
return
NULL
;
}
/*
* TODO: Be sure the padded bytes are cleaned.
* It would be better to set to zero the bytes
* that are not aligned to the word boundary
* at the end of the procedure.
*/
for
(
dy
=
0
;
dy
<
h
;
dy
++
)
{
if
(
color_type
==
PNG_COLOR_TYPE_RGB
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment