diff --git a/src/applications/conduit/method/differential/ConduitAPI_differential_setdiffproperty_Method.php b/src/applications/conduit/method/differential/ConduitAPI_differential_setdiffproperty_Method.php
index 8613195f7d..3dc468ca53 100644
--- a/src/applications/conduit/method/differential/ConduitAPI_differential_setdiffproperty_Method.php
+++ b/src/applications/conduit/method/differential/ConduitAPI_differential_setdiffproperty_Method.php
@@ -1,115 +1,114 @@
 <?php
 
 /**
  * @group conduit
  */
 final class ConduitAPI_differential_setdiffproperty_Method
   extends ConduitAPIMethod {
 
   public function getMethodDescription() {
     return "Attach properties to Differential diffs.";
   }
 
   public function defineParamTypes() {
     return array(
       'diff_id' => 'required diff_id',
       'name'    => 'required string',
       'data'    => 'required string',
     );
   }
 
   public function defineReturnType() {
     return 'void';
   }
 
   public function defineErrorTypes() {
     return array(
       'ERR_NOT_FOUND' => 'Diff was not found.',
     );
   }
 
   private static function updateLintStatus($diff_id) {
 
     $diff = id(new DifferentialDiff())->load($diff_id);
     if (!$diff) {
       throw new ConduitException('ERR_NOT_FOUND');
     }
 
     // Load the postponed linters attached to this diff.
     $postponed_linters_property = id(
       new DifferentialDiffProperty())->loadOneWhere(
         'diffID = %d AND name = %s',
         $diff_id,
         'arc:lint-postponed');
     if ($postponed_linters_property) {
       $postponed_linters = $postponed_linters_property->getData();
     } else {
       $postponed_linters = array();
     }
 
     // Load the lint messages currenty attached to the diff
     $messages_property = id(new DifferentialDiffProperty())->loadOneWhere(
       'diffID = %d AND name = %s',
       $diff_id,
       'arc:lint'
     );
     if ($messages_property) {
       $results = $messages_property->getData();
     } else {
       $results = array();
     }
 
     $has_error = false;
     $has_warning = false;
     foreach ($results as $result) {
       if ($result['severity'] === ArcanistLintSeverity::SEVERITY_ERROR) {
         $has_error = true;
         break;
       } else if ($result['severity'] ===
                  ArcanistLintSeverity::SEVERITY_WARNING) {
         $has_warning = true;
       }
     }
 
     if ($has_error) {
       $diff->setLintStatus(DifferentialLintStatus::LINT_FAIL);
     } else if ($has_warning) {
       $diff->setLintStatus(DifferentialLintStatus::LINT_WARN);
     } else if (!empty($postponed_linters)) {
       $diff->setLintStatus(DifferentialLintStatus::LINT_POSTPONED);
-    } else if ($results &&
-               $diff->getLintStatus() === DifferentialLintStatus::LINT_NONE) {
+    } else if ($diff->getLintStatus() != DifferentialLintStatus::LINT_SKIP) {
       $diff->setLintStatus(DifferentialLintStatus::LINT_OKAY);
     }
     $diff->save();
   }
 
   protected function execute(ConduitAPIRequest $request) {
     $diff_id = $request->getValue('diff_id');
     $name = $request->getValue('name');
     $data = json_decode($request->getValue('data'), true);
 
     self::updateDiffProperty($diff_id, $name, $data);
 
     if ($name === 'arc:lint' || $name == 'arc:lint-postponed') {
       self::updateLintStatus($diff_id);
     }
 
     return;
   }
 
   private static function updateDiffProperty($diff_id, $name, $data) {
     $property = id(new DifferentialDiffProperty())->loadOneWhere(
       'diffID = %d AND name = %s',
       $diff_id,
       $name);
     if (!$property) {
       $property = new DifferentialDiffProperty();
       $property->setDiffID($diff_id);
       $property->setName($name);
     }
     $property->setData($data);
     $property->save();
     return $property;
   }
 }