Page MenuHomePhabricator

D11627.id27981.diff
No OneTemporary

D11627.id27981.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
Sat, Oct 19, 10:56 PM (2 w, 2 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6734199
Default Alt Text
D11627.id27981.diff (837 B)

Event Timeline