Fix for sound playback in Windows 2008R2 which requires

the rdpdr channel to be initiated. 
RDPEA nor RDPBCGR mention a relation between audio and
the rdpdr channel.

See. support request #2717082



git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1604 423420c4-83ab-492f-b58f-81f9feb106b5
This commit is contained in:
Henrik Andersson 2010-12-20 13:42:51 +00:00
parent 64e4fa886a
commit 9dd6bdab95
3 changed files with 7 additions and 4 deletions

View File

@ -158,7 +158,7 @@ int get_device_index(RD_NTHANDLE handle);
void convert_to_unix_filename(char *filename);
void rdpdr_send_completion(uint32 device, uint32 id, uint32 status, uint32 result, uint8 * buffer,
uint32 length);
RD_BOOL rdpdr_init(void);
RD_BOOL rdpdr_init(RD_BOOL force);
void rdpdr_add_fds(int *n, fd_set * rfds, fd_set * wfds, struct timeval *tv, RD_BOOL * timeout);
struct async_iorequest *rdpdr_remove_iorequest(struct async_iorequest *prev,
struct async_iorequest *iorq);

View File

@ -461,6 +461,7 @@ main(int argc, char *argv[])
char *locale = NULL;
int username_option = 0;
RD_BOOL geometry_option = False;
RD_BOOL force_rdpdr = False;
#ifdef WITH_RDPSND
char *rdpsnd_optarg = NULL;
#endif
@ -960,13 +961,15 @@ main(int argc, char *argv[])
{
warning("Initializing sound-support failed!\n");
}
else
force_rdpdr = True;
}
#endif
if (g_lspci_enabled)
lspci_init();
rdpdr_init();
rdpdr_init (force_rdpdr);
while (1)
{

View File

@ -838,9 +838,9 @@ rdpdr_process(STREAM s)
}
RD_BOOL
rdpdr_init()
rdpdr_init(RD_BOOL force)
{
if (g_num_devices > 0)
if (g_num_devices > 0 || force)
{
rdpdr_channel =
channel_register("rdpdr",