- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
new = ngx_pnalloc(cf->pool, sizeof("; domain=") - 1 + domain->len);
if (new == NULL) {
return NGX_CONF_ERROR;
}
p = ngx_cpymem(new, "; domain=", sizeof("; domain=") - 1);
ngx_memcpy(p, domain->data, domain->len);
domain->len += sizeof("; domain=") - 1;
dmitry_113 08.04.2010 23:44 # −2.2
nur 09.04.2010 01:31 # −5.2
guest 09.04.2010 05:21 # +2.4
guest 09.04.2010 11:26 # +5.8
guest 09.04.2010 14:18 # +0.2
linux-hacker 16.04.2010 23:47 # 0
Но вообще всё это придирки, не говнокод.
guest 09.04.2010 06:52 # −1.6
З.Ы.Можно минусовать.
к-своему-стыду-забывающий-Си-и-С++-кун
guest 09.04.2010 07:17 # +0.6
Грабли возникнут, только если попытаться скомпилировать это компилятором С++.
guest 09.04.2010 07:21 # +0.8
guest 09.04.2010 14:14 # +1.4
ISith 09.04.2010 19:05 # +1
guest 09.04.2010 20:44 # +2.8
тут дело не в памяти вообще-то. если чуваку придётся изменить это значение, он может забыть в одном месте что-нибудь изменить. т.е. в одном месте будет "; newdomain=", а в другом может остаться "; domain=".
в понятиях маинтабилити, это тоже самое, что писать some_code(0, SOME_CONSTANT); some_code(1, SOME_CONSTANT); some_code(2, SOME_CONSTANT); вместо for(i = 0; i < 3; i++) { some_code(i, SOME_CONSTANT); }
это неявный копипаст, что чревато чисто человеческими ошибками (компилер тут ни при чём)
поэтому выигрыш для вынесения в константу есть!
а минусуют в основном потому что "nginx - это круто и выше моего понимания, потому что я быдлокодер на жава, nginx-то уж писали тру-хоцкеры, которые не могут ошибиться"
guest 09.04.2010 23:15 # 0
ISith 10.04.2010 01:55 # +1.2
guest 10.04.2010 06:59 # +1
Изменить на одной строке и не заметить на другой нереально, тем более что делается это не в блокноте
guest 10.04.2010 11:15 # 0
Кому-нибудь "лишний" пробел не понравится, или еще что.
Опять же, люди разные - один заменит везде, другой скажет "я типа не заметил, что их там много".
guest 12.04.2010 18:31 # −2