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
c1bfa103
Commit
c1bfa103
authored
Nov 20, 2020
by
Jacek Caban
Committed by
Alexandre Julliard
Nov 23, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
server: Remove no longer needed hack for inheriting console from stdin.
Signed-off-by:
Jacek Caban
<
jacek@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
8ca9b44f
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
3 additions
and
41 deletions
+3
-41
console.c
server/console.c
+0
-30
process.c
server/process.c
+3
-9
process.h
server/process.h
+0
-2
No files found.
server/console.c
View file @
c1bfa103
...
...
@@ -595,36 +595,6 @@ int free_console( struct process *process )
return
1
;
}
/* let process inherit the console from parent... this handle two cases :
* 1/ generic console inheritance
* 2/ parent is a renderer which launches process, and process should attach to the console
* rendered by parent
*/
obj_handle_t
inherit_console
(
struct
thread
*
parent_thread
,
obj_handle_t
handle
,
struct
process
*
process
,
obj_handle_t
hconin
)
{
struct
console_input
*
console
=
NULL
;
if
(
handle
)
return
duplicate_handle
(
current
->
process
,
handle
,
process
,
0
,
0
,
DUP_HANDLE_SAME_ACCESS
);
/* if parent is a renderer, then attach current process to its console
* a bit hacky....
*/
if
(
hconin
&&
parent_thread
)
{
/* FIXME: should we check some access rights ? */
if
(
!
(
console
=
(
struct
console_input
*
)
get_handle_obj
(
parent_thread
->
process
,
hconin
,
0
,
&
console_input_ops
)))
clear_error
();
/* ignore error */
}
if
(
!
console
)
return
0
;
process
->
console
=
console
;
console
->
num_proc
++
;
return
alloc_handle
(
process
,
process
->
console
,
SYNCHRONIZE
|
GENERIC_READ
|
GENERIC_WRITE
,
0
);
}
struct
thread
*
console_get_renderer
(
struct
console_input
*
console
)
{
return
console
->
renderer
;
...
...
server/process.c
View file @
c1bfa103
...
...
@@ -1254,15 +1254,9 @@ DECL_HANDLER(new_process)
connect_process_winstation
(
process
,
parent_thread
,
parent
);
/* set the process console */
if
(
!
(
req
->
create_flags
&
(
DETACHED_PROCESS
|
CREATE_NEW_CONSOLE
)))
{
/* FIXME: some better error checking should be done...
* like if hConOut and hConIn are console handles, then they should be on the same
* physical console
*/
info
->
data
->
console
=
inherit_console
(
parent_thread
,
info
->
data
->
console
,
process
,
req
->
inherit_all
?
info
->
data
->
hstdin
:
0
);
}
if
(
info
->
data
->
console
>
3
)
info
->
data
->
console
=
duplicate_handle
(
parent
,
info
->
data
->
console
,
process
,
0
,
0
,
DUPLICATE_SAME_ACCESS
);
if
(
!
req
->
inherit_all
&&
!
(
req
->
create_flags
&
CREATE_NEW_CONSOLE
))
{
...
...
server/process.h
View file @
c1bfa103
...
...
@@ -132,8 +132,6 @@ extern void detach_debugged_processes( struct thread *debugger );
extern
void
enum_processes
(
int
(
*
cb
)(
struct
process
*
,
void
*
),
void
*
user
);
/* console functions */
extern
obj_handle_t
inherit_console
(
struct
thread
*
parent_thread
,
obj_handle_t
handle
,
struct
process
*
process
,
obj_handle_t
hconin
);
extern
int
free_console
(
struct
process
*
process
);
extern
struct
thread
*
console_get_renderer
(
struct
console_input
*
console
);
...
...
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