- 17 Aug, 2015 3 commits
-
-
Orvid King authored
Summary: MSVC spotted this very suspicious line when I was running it with /analyze, and complained about using an unitialized variable. This variable isn't used anywhere in the function, and is initializing itself with itself. I have no idea how this compiled in the first place, but apparently it does. This removes the line in question. Closes #295 Reviewed By: @yfeldblum, @paulbiss Differential Revision: D2340688 Pulled By: @sgolemon
-
Orvid King authored
Summary: This uses `<random>` to implement it, because there is no `/dev/urandom` on Windows. Closes #250 Reviewed By: @yfeldblum Differential Revision: D2282887 Pulled By: @sgolemon
-
Yedidya Feldblum authored
Summary: [Folly] Extract folly/io/async/test/RequestContextTest.cpp (from Thrift). Reviewed By: @haijunz Differential Revision: D2350908
-
- 15 Aug, 2015 1 commit
-
-
Dhruv Matani authored
Summary: When we FATAL with a "Double registration of singleton" error, make it abundantly clear why such a thing could have happended so that the developer doesn't feel lost. Reviewed By: @chipturner Differential Revision: D2345728
-
- 14 Aug, 2015 3 commits
-
-
Naizhi Li authored
Summary: Today it's hardcoded to use the flag, which could result in some problem. We should allow callers to choose. Reviewed By: @djwatson Differential Revision: D2345036
-
Dave Watson authored
Summary: Remove recently introduced dependency on boost_thread by breaking EventBaseLocal off to its own rule Introduced in D2203063 Reviewed By: @mzlee Differential Revision: D2301943
-
Yedidya Feldblum authored
Summary: [Folly] Fix AtomicHashArray::defaultConfig SIOF. May fix https://github.com/facebook/folly/issues/300. Reviewed By: @paulbiss Differential Revision: D2343162
-
- 13 Aug, 2015 2 commits
-
-
Peter Griess authored
Summary: - This mirrors the behavior in AsyncServerSocket Reviewed By: @yfeldblum Differential Revision: D2338665
-
Yang Chi authored
Summary: The fix in D2283221 was specific to a bug in gcc 4.8 but the macro was failing to filter out clang compilers. Reviewed By: @yfeldblum Differential Revision: D2340160
-
- 12 Aug, 2015 6 commits
-
-
Orvid King authored
Summary: Because we don't even have `fork` to begin with under MSVC. Closes #278 Reviewed By: @yfeldblum Differential Revision: D2306518 Pulled By: @sgolemon
-
Orvid King authored
Summary: This adds MSVC support to the detection of `MaxAlign` in `Portability.h`. Closes #256 Reviewed By: @yfeldblum Differential Revision: D2283221 Pulled By: @sgolemon
-
Orvid King authored
Summary: No idea why these are the only two places it complains about, but it does. This just explicitly scopes them. Closes #253 Reviewed By: @yfeldblum Differential Revision: D2282985 Pulled By: @sgolemon
-
Yedidya Feldblum authored
Summary: [Folly] CodeMod apache::thrift::transport::TSocketAddress to folly::SocketAddress. yes | codemod --extensions h,tcc,cpp '^#include [<"]thrift/lib/cpp/transport/TSocketAddress\.h[>"]$' '#include <folly/SocketAddress.h>' yes | codemod --extensions h,tcc '\b(((apache::)?thrift::)?transport::)?TSocketAddress\b' 'folly::SocketAddress' yes | codemod --extensions cpp '^using apache::thrift::transport::TSocketAddress;$' 'using folly::SocketAddress;' yes | codemod --file-list "$(git ls-files "**/*.cpp" | xargs grep -P '^using (namespace folly|folly::SocketAddress);$' | cut -d: -f1 | paste -s -d,)" '\b(((apache::)?thrift::)?transport::)?TSocketAddress\b' 'SocketAddress' yes | codemod --extensions cpp '\b(((apache::)?thrift::)?transport::)?TSocketAddress\b' 'folly::SocketAddress' yes | codemod --extensions h,tcc,cpp -m '^\s*typedef folly::SocketAddress folly::SocketAddress;\n' '' yes | codemod --file-list thrift/lib/cpp/Makefile.am -m '^\s*transport/TSocketAddress\.h \\\n' '' rm thrift/lib/cpp/transport/TSocketAddress.h Reviewed By: @Invalid auth token., @luk Differential Revision: D2325523
-
Orvid King authored
Summary: MSVC will never be able to load VDSO, and doesn't even have dlopen, so just return `nullptr`, and let the fallback mechanisms handle it from there. Closes #282 Reviewed By: @yfeldblum Differential Revision: D2307461 Pulled By: @sgolemon
-
Hannes Roth authored
Summary: Perfect forwarding only works if the function is templated on the same type, not if the type is a class template. Discovered by @lbrandy. Reviewed By: @yfeldblum, @lbrandy Differential Revision: D2333005
-
- 11 Aug, 2015 3 commits
-
-
Hannes Roth authored
Summary: Not aligning `lambdaBuf_` can lead to unaligned reads, which can be a problem on some platforms. We use `lambdaBuf_` to store a type of up to `lambdaBufSize`, so aligning it to that should always be safe. Reviewed By: @alexshap Differential Revision: D2319347
-
Yedidya Feldblum authored
Summary: [Folly] Emplacement in folly::padded::Adaptor, if the adapted class allows. Reviewed By: @Gownta Differential Revision: D2157162
-
Noel Sardana authored
Summary: Implemented the given functions by porting similar functionality from the twitter Future utility. Reviewed By: @hannesr Differential Revision: D2303701
-
- 10 Aug, 2015 1 commit
-
-
Sara Golemon authored
-
- 09 Aug, 2015 1 commit
-
-
Brett Simmers authored
Summary: I added this to support logging with varying indentation levels, but it could also be useful in other situations. Examples are in the test/documentation. Reviewed By: @tudor Differential Revision: D2322206
-
- 07 Aug, 2015 1 commit
-
-
Yedidya Feldblum authored
Summary: [Folly] Avoid incorrect constexpr in folly/AtomicHashArray.h. It's actually not transitively constexpr, because it uses const values that are not themselves constexpr. Depending on the compiler, it could theoretically fail to build. Reviewed By: @Gownta Differential Revision: D2322143
-
- 06 Aug, 2015 2 commits
-
-
Anton Likhtarov authored
Summary: Mcrouter still enables these by default. Tracking down a perf regression in another code path that uses fibers. Reviewed By: @JohnRambo Differential Revision: D2320772
-
Alexander Shaposhnikov authored
Summary: Add a golden struct for checking the size of Core. It makes this test pass on OSX (now failing because of the different size of std::function). Reviewed By: @hannesr Differential Revision: D2315429
-
- 05 Aug, 2015 4 commits
-
-
Yedidya Feldblum authored
Summary: [Folly] ScopedEventBaseThread should support an EventBaseManager context. Reviewed By: @Gownta Differential Revision: D2314049
-
Yedidya Feldblum authored
Summary: [Folly] Use static const keys in AtomicHashArray::Config. From https://github.com/facebook/folly/pull/264/, MSVC may have a hard time with certain expressions. D2284130 factored them out as `static constexpr` members, but Clang had a hard time with that in HPHP. This adds a test case that triggers the same failure to the Folly build. Not quite sure how this impacts MSVC though. Reviewed By: @Gownta Differential Revision: D2304346
-
Orvid King authored
Summary: Because `.native()` returns a wide string on MSVC, but a normal string is expected by the rest of the code. Closes #283 Reviewed By: @yfeldblum Differential Revision: D2307488 Pulled By: @sgolemon
-
Orvid King authored
Summary: MSVC has some odd accessibility rules, so this makes a couple of things public rather than private. Closes #284 Reviewed By: @yfeldblum Differential Revision: D2307578 Pulled By: @sgolemon
-
- 04 Aug, 2015 3 commits
-
-
Nathan Bronson authored
Summary: Make RetryingTest more robust by giving it multiple chances to meeting timing criteria. Reviewed By: @yfeldblum Differential Revision: D2306245
-
Yedidya Feldblum authored
Summary: [Folly] Refactor extract FOLLY_SYNCHRONIZED_HAVE_TIMED_MUTEX. The same complex check is done in two places. Ick. Extract it to a single place. Reviewed By: @mzlee Differential Revision: D2302885
-
Alexander Shaposhnikov authored
Summary: Fix incorrect using of pthread in folly::ThreadLocal. The root of the trouble (see man pthread_key_create): "At thread exit, if a key value has a non-NULL destructor pointer, and the thread has a non-NULL value associated with that key, the value of the key is set to NULL, and then the function pointed to is called with the previously associated value as its sole argument." At thread exit we need to recover the thread-specific threadEntry otherwise the subsequent calls of getThreadEntry may recreate it (what actually DOES happen in the test ThreadLocalPtr.CreateOnThreadExit) and the newly created threadEntry will "leak". It will live longer than the corresponding thread violating the internal invariant of StaticMeta and also it will break the code of the method onThreadExit. In particular this bug causes the failure of the test ThreadLocalPtr.CreateOnThreadExit on OSX. Reviewed By: @lbrandy Differential Revision: D2304950
-
- 03 Aug, 2015 1 commit
-
-
Orvid King authored
Summary: It was originally unconditionally useing `__attribute__` syntax, so this makes it conditionally use the `__declspec` syntax. Closes #268 Reviewed By: @yfeldblum Differential Revision: D2283909 Pulled By: @sgolemon
-
- 02 Aug, 2015 1 commit
-
-
Yedidya Feldblum authored
Summary: [Folly] Fix ASAN failure in folly/io/async/test/NotificationQueueTest.cpp. Reviewed By: @djwatson Differential Revision: D2299112
-
- 01 Aug, 2015 1 commit
-
-
Brett Simmers authored
Summary: D2284130 broke the HHVM clang build. Reviewed By: @mxw Differential Revision: D2303914
-
- 31 Jul, 2015 7 commits
-
-
Michael Lee authored
Summary: Temp remove EventBaseLocal on mobile. Reviewed By: @djwatson Differential Revision: D2302322
-
Michael Lee authored
Summary: Do not use these if __ANDROID__ is defined as well. Reviewed By: @yangchi Differential Revision: D2301782
-
Orvid King authored
Summary: I have no idea why this specific declaration would error, or if there is a difference in meaning, but this fixes MSVC's absurd parser error. Closes #277 Reviewed By: @yfeldblum Differential Revision: D2284096
-
Orvid King authored
Summary: Improves MSVC support. Closes #274 Note that this diff has been heavily modified from @Orvid's original PR by @yfeldblum and @sgolemon Reviewed By: @yfeldblum Differential Revision: D2284035 Pulled By: @sgolemon
-
Orvid King authored
Summary: Closes #264 Modified by @sgolemon from the original PR to declare MSVC2015-final as the official minimum version, making the defines in the original PR unnecessary. Reviewed By: @yfeldblum Differential Revision: D2284130 Pulled By: @sgolemon
-
Nick Terrell authored
Summary: There are a bunch of methods in `folly::dynamic` that return a reference to a sub-object, e.g. `getString()`. These methods are a bit unsafe because it allows you to write code with dangling references when the `folly::dynamic` object is an rvalue: auto& obj = parse_json(some_string).at("key"); However, the bigger win is that when we have an rvalue `folly::dynamic`, such as returned by `getDefault(...)`, we can move the sub-object out: auto obj = parse_json(some_string).at("key"); auto str = obj.getDefault("another-key", "").getString(); In the first line, the subobject is copied out when it could be safely moved out. In the second line `getDefault(...)` copies the dynamic sub-object out, and then `getString()` copies the string out, when the string could be moved. Also in the case of `getDefault()` being called on a rvalue, we can move the sub-object out. Reviewed By: @marcinpe Differential Revision: D2267588
-
Sophia Wang authored
Summary: remove unnecessary stuff Reviewed By: @siyengar Differential Revision: D2284095
-