Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
9434e199
Commit
9434e199
authored
Dec 04, 2008
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
server: Limit the number of allocated handles before running out of memory.
parent
9960ab24
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
6 additions
and
5 deletions
+6
-5
handle.c
server/handle.c
+5
-5
trace.c
server/trace.c
+1
-0
No files found.
server/handle.c
View file @
9434e199
...
...
@@ -64,6 +64,7 @@ static struct handle_table *global_table;
#define RESERVED_ALL (RESERVED_INHERIT | RESERVED_CLOSE_PROTECT)
#define MIN_HANDLE_ENTRIES 32
#define MAX_HANDLE_ENTRIES 0x00ffffff
/* handle to table index conversion */
...
...
@@ -191,13 +192,12 @@ struct handle_table *alloc_handle_table( struct process *process, int count )
static
int
grow_handle_table
(
struct
handle_table
*
table
)
{
struct
handle_entry
*
new_entries
;
int
count
=
table
->
count
;
int
count
=
min
(
table
->
count
*
2
,
MAX_HANDLE_ENTRIES
)
;
if
(
count
>=
INT_MAX
/
2
)
return
0
;
count
*=
2
;
if
(
!
(
new_entries
=
realloc
(
table
->
entries
,
count
*
sizeof
(
struct
handle_entry
)
)))
if
(
count
==
table
->
count
||
!
(
new_entries
=
realloc
(
table
->
entries
,
count
*
sizeof
(
struct
handle_entry
)
)))
{
set_error
(
STATUS_
NO_MEMORY
);
set_error
(
STATUS_
INSUFFICIENT_RESOURCES
);
return
0
;
}
table
->
entries
=
new_entries
;
...
...
server/trace.c
View file @
9434e199
...
...
@@ -4582,6 +4582,7 @@ static const struct
{
"HANDLE_NOT_CLOSABLE"
,
STATUS_HANDLE_NOT_CLOSABLE
},
{
"ILLEGAL_FUNCTION"
,
STATUS_ILLEGAL_FUNCTION
},
{
"INSTANCE_NOT_AVAILABLE"
,
STATUS_INSTANCE_NOT_AVAILABLE
},
{
"INSUFFICIENT_RESOURCES"
,
STATUS_INSUFFICIENT_RESOURCES
},
{
"INVALID_CID"
,
STATUS_INVALID_CID
},
{
"INVALID_DEVICE_REQUEST"
,
STATUS_INVALID_DEVICE_REQUEST
},
{
"INVALID_FILE_FOR_SECTION"
,
STATUS_INVALID_FILE_FOR_SECTION
},
...
...
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