Spis treści
Gdy coś poprawiasz/dodajesz, zachowuj styl reszty kodu. Wcięcia rób znakami tabulacji, a nie spacjami. Stawiaj spacje po przecinkach i średnikach. Jeśli masz inny styl, a podesłane poprawki będą dobre i/lub potrzebne, nie zdziw się, jeśli Twój kod zostanie przeregadowany.
Dopisuj się do copyrightów na początku pliku. Inaczej zakładam, że zrzekasz się praw do podesłanych kawałków kodu. Oczywiście podsyłany kod musi być na takiej samej licencji, co reszta. W innym wypadku nie trać czasu i go nie przysyłaj.
Zachowuj przyjętą konwencję. Jeśli wszystkie zmienne danej
struktury mają nazwy typu foobar_count,
nie dodawaj foocount, czy
nfoo.
Nie zmieniaj api bez powodu. Nawet jeśli chcesz to zrobić, skonsultuj z resztą developerów.
Tworząc większy kawałek/moduł/plik przeznaczony do jakiejś
konkretnej funkcji, staraj się nazywać funkcje i zmienne tak,
by było wiadomo, do czego służą. Przykład: funkcje dotyczące
list zaczynają się list_*, funkcje
dotyczące userlisty to userlist_*,
konfiguracja to config_*.
Do alokacji pamięci używaj funkcji
xmalloc(),
xcalloc(),
xrealloc() i
xstrdup(). Nie musisz sprawdzać
zwracanej wartości. Jeśli zabraknie pamięci, funkcje te same
zajmą się grzecznym zamknięciem programu. Dbaj o zwalnianie
buforów, gdy nie są one już potrzebne.
Zamiast strncpy() oraz
strncat() używaj
strlcpy() i
strlcat(), które przyjmują jako parametr
całkowity rozmiar bufora. Nie trzeba się martwić o to, ile w
buforze pozostało jeszcze miejsca, czy znak zerowy się
zmieści, etc. Obie funkcje zawsze
zwracają ilość znaków, jaka została(by) zapisana do bufora.
Jeśli nie masz pojęcia o alokacji pamięci i obsłudze stringów w C, najlepiej daj sobie spokój. Nawet jeśli kod działa, ale nie trzyma się kupy, zostanie odrzucony.
Podsyłając patche, twórz je poleceniem diff -u. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je dołączyć doong>. diff bez parametrów generuje patche, które nie zawierają żadnego kontekstu i ciężko je do