1 |
|
2 |
Code style / indentation |
3 |
------------------------ |
4 |
The file indent-all.sh contains information about the current code |
5 |
style. Run this script before commits. |
6 |
|
7 |
|
8 |
Variable argument macros |
9 |
------------------------ |
10 |
Variable argument macros are non-portable in general, and should be |
11 |
avoided. Either use a second set of parentheses like DEBUG, or create |
12 |
a variable argument function like error. |
13 |
|
14 |
|
15 |
Structure |
16 |
--------- |
17 |
The core protocol stack should be system-independent (i.e. ANSI C89 |
18 |
only) so that it is easy to port. This currently applies to the |
19 |
following files: |
20 |
|
21 |
bitmap.c licence.c orders.c rdp.c rdp5.c cache.c iso.c mcs.c |
22 |
secure.c mppc.c channels.c |
23 |
rdesktop.c |
24 |
|
25 |
|
26 |
Compiler support |
27 |
---------------- |
28 |
The source code should be compatible with ANSI C89. |
29 |
|
30 |
|
31 |
RDP resources |
32 |
------------- |
33 |
http://dev.remotenetworktechnology.com/refdata.htm |
34 |
|
35 |
|
36 |
Checking for out of memory conditions |
37 |
------------------------------------- |
38 |
Try to handle out of memory conditions gracefully. Use the xmalloc |
39 |
routines from rdesktop.c, instead of calling malloc manually. Also, |
40 |
remember that several Xlib functions can return NULL. This includes |
41 |
XGetImage. Use exit_if_null to verify returned pointers. |
42 |
|