Unverified Commit b6669955 authored by Mike Gabriel's avatar Mike Gabriel

Merge branch 'uli42-pr/various6' into 3.6.x

parents 3523d15e 97a69b95
...@@ -2319,7 +2319,7 @@ void nxagentSetDeferLevel(void) ...@@ -2319,7 +2319,7 @@ void nxagentSetDeferLevel(void)
nxagentChangeOption(Streaming, False); nxagentChangeOption(Streaming, False);
} }
switch (nxagentOption(LinkType)) switch (nxagentOption(LinkType))
{ {
case LINK_TYPE_MODEM: case LINK_TYPE_MODEM:
case LINK_TYPE_ISDN: { deferLevel = 2; tileWidth = 64; tileHeight = 64; break; } case LINK_TYPE_ISDN: { deferLevel = 2; tileWidth = 64; tileHeight = 64; break; }
......
...@@ -58,7 +58,7 @@ void nxagentWMDetect(void); ...@@ -58,7 +58,7 @@ void nxagentWMDetect(void);
#ifdef XlibAtom #ifdef XlibAtom
/* /*
* only provide these protoypes if the including file knows about Xlib * only provide these prototypes if the including file knows about Xlib
* types. This allows us including Atoms.h without having to use the * types. This allows us including Atoms.h without having to use the
* Xlib type magic of Agent.h * Xlib type magic of Agent.h
*/ */
......
...@@ -44,10 +44,15 @@ enum ClientHint ...@@ -44,10 +44,15 @@ enum ClientHint
JAVA_WINDOW JAVA_WINDOW
}; };
/* client byte counting is currently unused */
#undef COUNT_CLIENT_BYTES
typedef struct _PrivClientRec typedef struct _PrivClientRec
{ {
int clientState; int clientState;
#ifdef COUNT_CLIENT_BYTES
long clientBytes; long clientBytes;
#endif
enum ClientHint clientHint; enum ClientHint clientHint;
char *clientInfoString; char *clientInfoString;
} PrivClientRec; } PrivClientRec;
...@@ -59,8 +64,6 @@ extern int nxagentClientPrivateIndex; ...@@ -59,8 +64,6 @@ extern int nxagentClientPrivateIndex;
extern void nxagentClientStateCallback(CallbackListPtr *callbacks, void *data, void *args); extern void nxagentClientStateCallback(CallbackListPtr *callbacks, void *data, void *args);
#undef COUNT_CLIENT_BYTES
#ifdef COUNT_CLIENT_BYTES #ifdef COUNT_CLIENT_BYTES
#define nxagentClientAddBytes(pClient, size) \ #define nxagentClientAddBytes(pClient, size) \
(nxagentClientPriv(pClient) -> clientBytes += (size)) (nxagentClientPriv(pClient) -> clientBytes += (size))
......
...@@ -758,18 +758,17 @@ static void nxagentDisplayFlushHandler(Display *disp, int length) ...@@ -758,18 +758,17 @@ static void nxagentDisplayFlushHandler(Display *disp, int length)
} }
/* /*
* From the changelog for nx-X11-3.0.0-4: * From the changelog for nx-X11-3.0.0-4: "Added the
* "Added the _NXDisplayErrorPredicate function in XlibInt.c. It is * _NXDisplayErrorPredicate function in XlibInt.c. It is actually a
* actually a pointer to a function called whenever Xlib is going to * pointer to a function called whenever Xlib is going to perform a
* perform a network operation. If the function returns true, the * network operation. If the function returns true, the call will be
* call will be aborted and Xlib will return the control to the ap- * aborted and Xlib will return the control to the application. It is
* plication. It is up to the application to set the XlibDisplayIO- * up to the application to set the XlibDisplayIO- Error flag after
* Error flag after the _NXDisplayErrorPredicate returns true. The * the _NXDisplayErrorPredicate returns true. The function can be used
* function can be used to activate additional checks, besides the * to activate additional checks, besides the normal failures detected
* normal failures detected by Xlib on the display socket. For exam- * by Xlib on the display socket. For example, the application can set
* ple, the application can set the funciton to verify if an inter- * the function to verify if an interrupt was received or if any other
* rupt was received or if any other event occurred mandating the * event occurred mandating the end of the session."
+ end of the session."
*/ */
static int nxagentDisplayErrorPredicate(Display *disp, int error) static int nxagentDisplayErrorPredicate(Display *disp, int error)
{ {
......
...@@ -131,8 +131,6 @@ ...@@ -131,8 +131,6 @@
extern Bool nxagentOnce; extern Bool nxagentOnce;
extern WindowPtr nxagentRootTileWindow;
extern int nxagentLastClipboardClient; extern int nxagentLastClipboardClient;
#ifdef NX_DEBUG_INPUT #ifdef NX_DEBUG_INPUT
......
...@@ -1127,7 +1127,7 @@ static void nxagentReconnectClip(GCPtr pGC, int type, void * pValue, int nRects) ...@@ -1127,7 +1127,7 @@ static void nxagentReconnectClip(GCPtr pGC, int type, void * pValue, int nRects)
/* /*
* Originally, the clip origin area were 0,0 but it didn't * Originally, the clip origin area were 0,0 but it didn't
* work with kedit and family, because it got the clip mask of * work with kedit and family, because it got the clip mask of
* the pixmap all traslated. * the pixmap all translated.
*/ */
XSetClipRectangles(nxagentDisplay, nxagentGC(pGC), pGC -> clipOrg.x, pGC -> clipOrg.y, XSetClipRectangles(nxagentDisplay, nxagentGC(pGC), pGC -> clipOrg.x, pGC -> clipOrg.y,
......
...@@ -123,6 +123,9 @@ Bool nxagentXdmcpAlertUp = False; ...@@ -123,6 +123,9 @@ Bool nxagentXdmcpAlertUp = False;
int nxagentBuffer; int nxagentBuffer;
Bool nxagentBlocking; Bool nxagentBlocking;
/* FIXME: nxagentCongestion is checked as a Boolean and as an Integer
(>= 4) at the same time which is weird at least */
int nxagentCongestion; int nxagentCongestion;
double nxagentBytesIn; double nxagentBytesIn;
...@@ -1017,7 +1020,7 @@ void nxagentDispatchHandler(ClientPtr client, int in, int out) ...@@ -1017,7 +1020,7 @@ void nxagentDispatchHandler(ClientPtr client, int in, int out)
nxagentDispatch.in = nxagentBytesIn; nxagentDispatch.in = nxagentBytesIn;
nxagentDispatch.out = nxagentBytesOut; nxagentDispatch.out = nxagentBytesOut;
isItTimeToYield = 1; isItTimeToYield = TRUE;
} }
#ifdef DEBUG #ifdef DEBUG
else else
...@@ -1126,7 +1129,7 @@ void nxagentDispatchHandler(ClientPtr client, int in, int out) ...@@ -1126,7 +1129,7 @@ void nxagentDispatchHandler(ClientPtr client, int in, int out)
nxagentDispatch.in = nxagentBytesIn; nxagentDispatch.in = nxagentBytesIn;
nxagentDispatch.out = nxagentBytesOut; nxagentDispatch.out = nxagentBytesOut;
isItTimeToYield = 1; isItTimeToYield = TRUE;
} }
#ifdef DEBUG #ifdef DEBUG
else else
......
...@@ -581,7 +581,6 @@ Reply Total Cached Bits In Bits Out Bits/Reply Ratio ...@@ -581,7 +581,6 @@ Reply Total Cached Bits In Bits Out Bits/Reply Ratio
} }
saveAgentState("TERMINATED"); saveAgentState("TERMINATED");
nxagentFreeAtomMap();
nxagentFreeFontData(); nxagentFreeFontData();
#endif /* NXAGENT_SERVER */ #endif /* NXAGENT_SERVER */
......
...@@ -531,13 +531,12 @@ void nxagentReconnectPictFormat(void *p0, XID x1, void *p2) ...@@ -531,13 +531,12 @@ void nxagentReconnectPictFormat(void *p0, XID x1, void *p2)
} }
/* /*
* The set of picture formats may change considerably * The set of picture formats may change considerably between
* between different X servers. This poses a problem * different X servers. This poses a problem while migrating NX
* while migrating NX sessions, because a requisite to * sessions, because a requisite to successfully reconnect the session
* successfully reconnect the session is that all pic- * is that all picture formats have to be available on the new X
* ture formats have to be available on the new X server. * server. To reduce such problems, we use a limited set of pictures
* To reduce such problems, we use a limited set of * available on the most X servers.
* pictures available on the most X servers.
*/ */
void nxagentPictureCreateDefaultFormats(ScreenPtr pScreen, FormatInitRec *formats, int *nformats) void nxagentPictureCreateDefaultFormats(ScreenPtr pScreen, FormatInitRec *formats, int *nformats)
......
...@@ -1244,7 +1244,7 @@ void nxagentFreePropertyList(void) ...@@ -1244,7 +1244,7 @@ void nxagentFreePropertyList(void)
/* /*
* We are trying to distinguish notifications generated by an external * We are trying to distinguish notifications generated by an external
* client from those genarated by our own requests. * client from those generated by our own requests.
*/ */
Bool nxagentNotifyMatchChangeProperty(void *p) Bool nxagentNotifyMatchChangeProperty(void *p)
......
...@@ -2514,9 +2514,9 @@ int nxagentShadowInit(ScreenPtr pScreen, WindowPtr pWin) ...@@ -2514,9 +2514,9 @@ int nxagentShadowInit(ScreenPtr pScreen, WindowPtr pWin)
if (nxagentKeyboard != NULL) if (nxagentKeyboard != NULL)
{ {
int i; int i;
for (i = 0; nxagentKeyboard[i] != '/' && nxagentKeyboard[i] != 0; i++); for (i = 0; nxagentKeyboard[i] != '/' && nxagentKeyboard[i] != '\0'; i++);
if(nxagentKeyboard[i] == 0 || nxagentKeyboard[i + 1] == 0 || i == 0) if(nxagentKeyboard[i] == '\0' || nxagentKeyboard[i + 1] == '\0' || i == 0)
{ {
#ifdef WARNING #ifdef WARNING
fprintf(stderr,"WARNING! Wrong keyboard type: %s.\n", nxagentKeyboard); fprintf(stderr,"WARNING! Wrong keyboard type: %s.\n", nxagentKeyboard);
......
...@@ -112,7 +112,7 @@ SplitResourcePtr nxagentAllocSplitResource(void) ...@@ -112,7 +112,7 @@ SplitResourcePtr nxagentAllocSplitResource(void)
fprintf(stderr, "nxagentAllocSplitResource: PANIC! No more resources for the next split.\n"); fprintf(stderr, "nxagentAllocSplitResource: PANIC! No more resources for the next split.\n");
#endif #endif
/* /*
FIXME: Must deal with the case all resources are exausted. FIXME: Must deal with the case all resources are exhausted.
*/ */
FatalError("nxagentAllocSplitResource: PANIC! No more resources for the next split.\n"); FatalError("nxagentAllocSplitResource: PANIC! No more resources for the next split.\n");
} }
......
...@@ -110,8 +110,6 @@ extern WindowPtr nxagentViewportFrameRight; ...@@ -110,8 +110,6 @@ extern WindowPtr nxagentViewportFrameRight;
extern WindowPtr nxagentViewportFrameAbove; extern WindowPtr nxagentViewportFrameAbove;
extern WindowPtr nxagentViewportFrameBelow; extern WindowPtr nxagentViewportFrameBelow;
extern WindowPtr nxagentRootTileWindow;
extern Bool nxagentReportPrivateWindowIds; extern Bool nxagentReportPrivateWindowIds;
#define RECTLIMIT 25 #define RECTLIMIT 25
...@@ -1532,7 +1530,7 @@ void nxagentConfigureWindow(WindowPtr pWin, unsigned int mask) ...@@ -1532,7 +1530,7 @@ void nxagentConfigureWindow(WindowPtr pWin, unsigned int mask)
* position in the window tree, and pPriorParent is its previous * position in the window tree, and pPriorParent is its previous
* parent. This function can be NULL. * parent. This function can be NULL.
* *
* We simply pass this pver to the real X server. * We simply pass this over to the real X server.
*/ */
void nxagentReparentWindow(WindowPtr pWin, WindowPtr pOldParent) void nxagentReparentWindow(WindowPtr pWin, WindowPtr pOldParent)
{ {
...@@ -3907,7 +3905,7 @@ StoringPixmapPtr nxagentFindItemBSPixmapList(unsigned long pixmapId) ...@@ -3907,7 +3905,7 @@ StoringPixmapPtr nxagentFindItemBSPixmapList(unsigned long pixmapId)
} }
} }
#ifdef WARNING #ifdef TEST
fprintf(stderr, "%s: WARNING! Item not found.\n", __func__); fprintf(stderr, "%s: WARNING! Item not found.\n", __func__);
#endif #endif
......
...@@ -539,7 +539,9 @@ allowed to change the keyboard settings through XKEYBOARD. ...@@ -539,7 +539,9 @@ allowed to change the keyboard settings through XKEYBOARD.
.TP 8 .TP 8
.B \-tile WxH .B \-tile WxH
maximum size of the tile used when sending an image to the remote maximum size of the tile used when sending an image to the remote
display (minimum allowed: 32x32; no default) display (minimum allowed: 32x32). The default depends on the link
type: 64x64 for \fImodem\fR and \fIisdn\fR, 4096x4096 for all other
link types)
.TP 8 .TP 8
.B \-irlimit .B \-irlimit
maximum image data rate to the encoder input in kB/s. The default is no limit. maximum image data rate to the encoder input in kB/s. The default is no limit.
...@@ -755,21 +757,29 @@ The default value can be set via the command line (\-defer). The value ...@@ -755,21 +757,29 @@ The default value can be set via the command line (\-defer). The value
provided as nx/nx option is set when resuming a session, thus it provided as nx/nx option is set when resuming a session, thus it
overrides the command line default. overrides the command line default.
The default depends on the link type (see man nxproxy).
Each defer level adds the following rules to the previous ones: Each defer level adds the following rules to the previous ones:
.RS 8 .RS 8
.TP 8 .TP 8
.I 0 .I 0
Eager encoding. Eager encoding.
Default for link speed \fIlan\fR and \fIlocal\fR.
.TP 8 .TP 8
.I 1 .I 1
No data is put or copied on pixmaps, marking them always as corrupted No data is put or copied on pixmaps, marking them always as corrupted
and synchronizing them on demand, i.e. when a copy area to a window is and synchronizing them on demand, i.e. when a copy area to a window is
requested, the source is synchronized before copying it. requested, the source is synchronized before copying it.
Default for link speed \fIwan\fR.
.TP 8 .TP 8
.I 2 .I 2
The put images over the windows are skipped marking the destination as The put images over the windows are skipped marking the destination as
corrupted. The same happens for copy area and composite operations, corrupted. The same happens for copy area and composite operations,
spreading the corrupted regions of involved drawables. spreading the corrupted regions of involved drawables.
Default for link speed \fIadsl\fR, \fIisdn\fR and \fImodem\fR.
.RE .RE
.TP 8 .TP 8
......
...@@ -342,7 +342,7 @@ extern int NXTransFlush(int fd); ...@@ -342,7 +342,7 @@ extern int NXTransFlush(int fd);
* connection. * connection.
* *
* NX_CHANNEL_SLAVE: The channel will forward data to a remote slave * NX_CHANNEL_SLAVE: The channel will forward data to a remote slave
* command (see NX_SLAVE_CMD envrionment variable) * command (see NX_SLAVE_CMD environment variable)
* *
* Only a proxy running at the NX server/X client side will be able * Only a proxy running at the NX server/X client side will be able
* to create a X, CUPS, SMB, MEDIA and HTTP channel. A proxy running * to create a X, CUPS, SMB, MEDIA and HTTP channel. A proxy running
......
...@@ -144,7 +144,7 @@ class Control ...@@ -144,7 +144,7 @@ class Control
T_session_mode SessionMode; T_session_mode SessionMode;
// //
// Either immediate or defferred flushes. // Either immediate or deferred flushes.
// //
T_flush_policy FlushPolicy; T_flush_policy FlushPolicy;
......
...@@ -566,7 +566,7 @@ class MessageStore ...@@ -566,7 +566,7 @@ class MessageStore
// it can contain valid data that must be // it can contain valid data that must be
// explicitly deallocated if not needed. // explicitly deallocated if not needed.
// Note also that you cannot count on the // Note also that you cannot count on the
// initialization made in costructor. // initialization made in constructor.
// //
temporary_ = message; temporary_ = message;
......
...@@ -109,7 +109,7 @@ Remote port used for the connection. ...@@ -109,7 +109,7 @@ Remote port used for the connection.
.TP 8 .TP 8
.B retry=<int> .B retry=<int>
Number of connection atempts. Number of connection attempts.
.TP 8 .TP 8
.B root=<string> .B root=<string>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment