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
c4789b08
Commit
c4789b08
authored
Jul 16, 2020
by
Jacek Caban
Committed by
Alexandre Julliard
Jul 17, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
server: Introduce IOCTL_CONDRV_ATTACH_RENDERER ioctl.
Signed-off-by:
Jacek Caban
<
jacek@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
5a174dd6
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
28 additions
and
0 deletions
+28
-0
condrv.h
include/wine/condrv.h
+4
-0
console.c
server/console.c
+23
-0
trace.c
server/trace.c
+1
-0
No files found.
include/wine/condrv.h
View file @
c4789b08
...
...
@@ -41,6 +41,10 @@
/* console renderer ioctls */
#define IOCTL_CONDRV_GET_RENDERER_EVENTS CTL_CODE(FILE_DEVICE_CONSOLE, 70, METHOD_BUFFERED, FILE_READ_PROPERTIES)
#define IOCTL_CONDRV_ATTACH_RENDERER CTL_CODE(FILE_DEVICE_CONSOLE, 71, METHOD_BUFFERED, FILE_READ_PROPERTIES)
/* console handle type */
typedef
unsigned
int
condrv_handle_t
;
/* structure for console char/attribute info */
typedef
struct
...
...
server/console.c
View file @
c4789b08
...
...
@@ -1732,6 +1732,29 @@ static int console_input_events_ioctl( struct fd *fd, ioctl_code_t code, struct
queue_async
(
&
evts
->
read_q
,
async
);
return
1
;
case
IOCTL_CONDRV_ATTACH_RENDERER
:
{
struct
console_input
*
console_input
;
if
(
get_req_data_size
()
!=
sizeof
(
condrv_handle_t
))
{
set_error
(
STATUS_INVALID_PARAMETER
);
return
0
;
}
console_input
=
(
struct
console_input
*
)
get_handle_obj
(
current
->
process
,
*
(
condrv_handle_t
*
)
get_req_data
(),
0
,
&
console_input_ops
);
if
(
!
console_input
)
return
0
;
if
(
!
console_input
->
evt
)
{
console_input
->
evt
=
(
struct
console_input_events
*
)
grab_object
(
evts
);
console_input
->
renderer
=
current
;
}
else
set_error
(
STATUS_INVALID_HANDLE
);
release_object
(
console_input
);
return
!
get_error
();
}
default:
set_error
(
STATUS_INVALID_HANDLE
);
return
0
;
...
...
server/trace.c
View file @
c4789b08
...
...
@@ -114,6 +114,7 @@ static void dump_ioctl_code( const char *prefix, const ioctl_code_t *code )
switch
(
*
code
)
{
#define CASE(c) case c: fprintf( stderr, "%s%s", prefix, #c ); break
CASE
(
IOCTL_CONDRV_ATTACH_RENDERER
);
CASE
(
IOCTL_CONDRV_FILL_OUTPUT
);
CASE
(
IOCTL_CONDRV_GET_INPUT_INFO
);
CASE
(
IOCTL_CONDRV_GET_MODE
);
...
...
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