diff --git a/src/TulsiGenerator/Bazel/tulsi/tulsi_aspects.bzl b/src/TulsiGenerator/Bazel/tulsi/tulsi_aspects.bzl
index 3f6a9ef..2ec814a 100644
--- a/src/TulsiGenerator/Bazel/tulsi/tulsi_aspects.bzl
+++ b/src/TulsiGenerator/Bazel/tulsi/tulsi_aspects.bzl
@@ -848,7 +848,7 @@
         objc_module_maps = objc_module_maps,
         module_name = module_name,
         type = target_kind,
-        infoplist = infoplist.basename if infoplist else None,
+        infoplist = infoplist.path if infoplist else None,
         platform_type = platform_type,
         product_type = product_type,
         xcode_version = xcode_version,
diff --git a/src/TulsiGenerator/BazelAspectInfoExtractor.swift b/src/TulsiGenerator/BazelAspectInfoExtractor.swift
index 31e4500..0100caf 100644
--- a/src/TulsiGenerator/BazelAspectInfoExtractor.swift
+++ b/src/TulsiGenerator/BazelAspectInfoExtractor.swift
@@ -28,6 +28,8 @@
   var bazelURL: URL
   /// The location of the Bazel workspace to be examined.
   let workspaceRootURL: URL
+  /// The execution root URL.
+  let executionRootURL: URL
   /// Stores Tulsi-specific Bazel settings.
   let bazelSettingsProvider: BazelSettingsProviderProtocol
 
@@ -44,10 +46,12 @@
 
   init(bazelURL: URL,
        workspaceRootURL: URL,
+       executionRootURL: URL,
        bazelSettingsProvider: BazelSettingsProviderProtocol,
        localizedMessageLogger: LocalizedMessageLogger) {
     self.bazelURL = bazelURL
     self.workspaceRootURL = workspaceRootURL
+    self.executionRootURL = executionRootURL
     self.bazelSettingsProvider = bazelSettingsProvider
     self.localizedMessageLogger = localizedMessageLogger
 
@@ -375,12 +379,7 @@
 
       var extensionType: String?
       if targetProductType?.isiOSAppExtension ?? false, let infoplistPath = dict["infoplist"] as? String {
-        // TODO(b/73349137): This relies on the fact the Plist will be located next to the
-        // .tulsiinfo file for the same target. It would be better to get an absolute path to the
-        // plist from bazel.
-        let plistPath = URL(fileURLWithPath: filename)
-          .deletingLastPathComponent()
-          .appendingPathComponent(infoplistPath).path
+        let plistPath = executionRootURL.appendingPathComponent(infoplistPath).path
         guard let info = NSDictionary(contentsOfFile: plistPath) else {
           throw ExtractorError.parsingFailed("Unable to load extension plist file: \(plistPath)")
         }
diff --git a/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift b/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
index 7f9024c..d746eef 100644
--- a/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
+++ b/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
@@ -73,8 +73,12 @@
                                                              workspaceRootURL: workspaceRootURL,
                                                              bazelUniversalFlags: universalFlags,
                                                              localizedMessageLogger: localizedMessageLogger)
+
+    let executionRootURL =  URL(fileURLWithPath: workspacePathInfoFetcher.getExecutionRoot(),
+                                isDirectory: false)
     aspectExtractor = BazelAspectInfoExtractor(bazelURL: bazelURL,
                                                workspaceRootURL: workspaceRootURL,
+                                               executionRootURL: executionRootURL,
                                                bazelSettingsProvider: bazelSettingsProvider,
                                                localizedMessageLogger: localizedMessageLogger)
     queryExtractor = BazelQueryInfoExtractor(bazelURL: bazelURL,
diff --git a/src/TulsiGeneratorIntegrationTests/AspectTests.swift b/src/TulsiGeneratorIntegrationTests/AspectTests.swift
index 5479614..e978b16 100644
--- a/src/TulsiGeneratorIntegrationTests/AspectTests.swift
+++ b/src/TulsiGeneratorIntegrationTests/AspectTests.swift
@@ -24,8 +24,11 @@
   override func setUp() {
     super.setUp()
     let bazelSettingsProvider = BazelSettingsProvider(universalFlags: bazelUniversalFlags)
+    let executionRootURL = URL(fileURLWithPath: workspaceInfoFetcher.getExecutionRoot(),
+                               isDirectory: false)
     aspectInfoExtractor = BazelAspectInfoExtractor(bazelURL: bazelURL,
                                                    workspaceRootURL: workspaceRootURL!,
+                                                   executionRootURL: executionRootURL,
                                                    bazelSettingsProvider: bazelSettingsProvider,
                                                    localizedMessageLogger: localizedMessageLogger)
   }
@@ -456,8 +459,11 @@
   override func setUp() {
     super.setUp()
     let bazelSettingsProvider = BazelSettingsProvider(universalFlags: bazelUniversalFlags)
+    let executionRootURL = URL(fileURLWithPath: workspaceInfoFetcher.getExecutionRoot(),
+                               isDirectory: false)
     aspectInfoExtractor = BazelAspectInfoExtractor(bazelURL: bazelURL,
                                                    workspaceRootURL: workspaceRootURL!,
+                                                   executionRootURL: executionRootURL,
                                                    bazelSettingsProvider: bazelSettingsProvider,
                                                    localizedMessageLogger: localizedMessageLogger)
     installBUILDFile("TestSuiteRoot",
