gleam: Don't cache user-installed `gleam` (#10635)

Marshall Bowers created

This PR updates the Gleam extension to not cache the binary when it is
using the one on the $PATH.

Release Notes:

- N/A

Change summary

extensions/gleam/src/gleam.rs | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)

Detailed changes

extensions/gleam/src/gleam.rs 🔗

@@ -13,17 +13,16 @@ impl GleamExtension {
         language_server_id: &LanguageServerId,
         worktree: &zed::Worktree,
     ) -> Result<String> {
+        if let Some(path) = worktree.which("gleam") {
+            return Ok(path);
+        }
+
         if let Some(path) = &self.cached_binary_path {
             if fs::metadata(path).map_or(false, |stat| stat.is_file()) {
                 return Ok(path.clone());
             }
         }
 
-        if let Some(path) = worktree.which("gleam") {
-            self.cached_binary_path = Some(path.clone());
-            return Ok(path);
-        }
-
         zed::set_language_server_installation_status(
             &language_server_id,
             &zed::LanguageServerInstallationStatus::CheckingForUpdate,