Page MenuHomePhabricator

D11627.diff
No OneTemporary

D11627.diff

diff --git a/src/moduleutils/PhutilLibraryMapBuilder.php b/src/moduleutils/PhutilLibraryMapBuilder.php
--- a/src/moduleutils/PhutilLibraryMapBuilder.php
+++ b/src/moduleutils/PhutilLibraryMapBuilder.php
@@ -427,6 +427,14 @@
$this->log("Loading symbol cache...\n");
$symbol_cache = $this->loadSymbolCache();
+ // If the XHPAST binary is not up-to-date, build it now. Otherwise,
+ // `phutil_symbols.php` will attempt to build the binary and will fail
+ // miserably because it will be trying to build the same file multiple
+ // times in parallel.
+ if (!PhutilXHPASTBinary::isAvailable()) {
+ PhutilXHPASTBinary::build();
+ }
+
// Build out the symbol analysis for all the files in the library. For
// each file, check if it's in cache. If we miss in the cache, do a fresh
// analysis.

File Metadata

Mime Type
text/plain
Expires
Wed, Nov 6, 5:37 AM (18 h, 40 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6712038
Default Alt Text
D11627.diff (837 B)

Event Timeline