On 27/04/17 11:20, Alex Rousskov wrote:
On 04/26/2017 07:01 AM, Amos Jeffries wrote:

+#if USE_OPENSSL // while Ssl:: bits in use
+static const char *SessionCacheName = "tls_session_cache";
+static Ipc::MemMap *SessionCache = nullptr;
+#endif
What does the above comment mean? I could not guess based on a few other
occurrences of the same comment, and I do not see any "Ssl::" bits in
the above code.

Oops, just me missing that after copying the functions that used these globals over. Will remove before commit.

+    if (auto *slotW = SessionCache->openForWriting((const cache_key*)key, 
pos)) {
In general, I recommend removing "*" after "auto" because the condition
and the code protected by it does not care whether the variable is a raw
pointer, a smart pointer, or (in some cases) something else with a
to-boolean conversion.

Okay, good point.

"auto" needs "const" and "&" but not "*".

FYI: that statement does not match my experiences with auto in the general case. I have in the past omitted these sugar type details and found that the compiler picked to use the object copy-assignment to duplicate the object into the 'auto' variable. That may just have been compiler bugs, but is a nasty one anyway. So I prefer to only replace the type name with auto to ensure that implicit conversions are kept to minimal or performant ones and the nature of the variable remains visible to us reading it.


Amos
_______________________________________________
squid-dev mailing list
squid-dev@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev

Reply via email to