Index: src/main/java/hudson/plugins/clearcase/action/UcmSnapshotCheckoutAction.java
===================================================================
--- src/main/java/hudson/plugins/clearcase/action/UcmSnapshotCheckoutAction.java	(revision 28776)
+++ src/main/java/hudson/plugins/clearcase/action/UcmSnapshotCheckoutAction.java	(working copy)
@@ -30,8 +30,6 @@
 import hudson.plugins.clearcase.util.PathUtil;
 
 import java.io.IOException;
-import java.util.HashSet;
-import java.util.Set;
 
 /**
  * Check out action that will check out files into a UCM snapshot view. Checking
@@ -59,80 +57,39 @@
     public boolean checkout(Launcher launcher, FilePath workspace,
                             String viewName) throws IOException, InterruptedException {
         
-        boolean localViewPathExists = new FilePath(workspace, viewName)
-            .exists();
+        boolean localViewPathExists = new FilePath(workspace, viewName).exists();
         boolean viewTagExists = cleartool.doesViewExist(viewName);
         
-        boolean updateLoadRules = true;
-        
         if (localViewPathExists) {
-            if (this.useUpdate) {
-                String configSpec = PathUtil.convertPathForOS(cleartool.catcs(viewName), launcher);
-                Set<String> configSpecLoadRules = extractLoadRules(configSpec);
-                if (configSpecNeedsUpdating(configSpecLoadRules)) {
-                    String newConfigSpec = getLoadRuleFreeConfigSpec(configSpec) + "\n";
-                    
-                    for (String loadRule : loadRules) {
-                        // Make sure the load rule starts with \ or /, as appropriate
-                        if (!(loadRule.startsWith("\\")) && !(loadRule.startsWith("/"))) {
-                            loadRule = PathUtil.fileSepForOS(launcher.isUnix()) + loadRule;
-                        }
-
-                        newConfigSpec += "load " + loadRule.trim() + "\n";
-                    }
-                    try {
-                        cleartool.setcs(viewName, PathUtil.convertPathForOS(newConfigSpec, launcher));
-                    } catch (IOException e) {
-                        launcher.getListener().fatalError(e.toString());
-                        return false;
-                    }
-                    updateLoadRules = false;
-                }
-            } else {
+            if (!this.useUpdate) {
                 cleartool.rmview(viewName);
                 cleartool.mkview(viewName, stream);
             }
-            
         } else {
             if (viewTagExists) {
                 launcher.getListener().fatalError("View path for " + viewName + " does not exist, but the view tag does.\n"
                                                   + "View cannot be created - build aborting.");
                 return false;
-            }
-            else {
-                cleartool.mkview(viewName, stream);
-            }
-        }
-        if (updateLoadRules) {
-            for (String loadRule : loadRules) {
-                // Make sure the load rule starts with \ or /, as appropriate
-                if (!(loadRule.startsWith("\\")) && !(loadRule.startsWith("/"))) {
-                    loadRule = PathUtil.fileSepForOS(launcher.isUnix()) + loadRule;
-                }
-
-                try {
-                    cleartool.update(viewName, loadRule.trim());
-                } catch (IOException e) {
-                    launcher.getListener().fatalError(e.toString());
-                    return false;
-                }
+            } else {
+            	cleartool.mkview(viewName, stream);
             }
         }
-        return true;
-    }
-    
-    private boolean configSpecNeedsUpdating(Set<String> configSpecLoadRules) {
-        boolean recreate = false;
+        String configSpec = PathUtil.convertPathForOS(cleartool.catcs(viewName), launcher);
+        String newConfigSpec = getLoadRuleFreeConfigSpec(configSpec) + "\n";
+        
         for (String loadRule : loadRules) {
-            if (!configSpecLoadRules.contains(loadRule)) {
-                System.out
-                    .println("Load rule: "
-                             + loadRule
-                             + " not found in current config spec, resetting config spec or recreating view");
-                recreate = true;
+            // Make sure the load rule starts with \ or /, as appropriate
+            if (!(loadRule.startsWith("\\")) && !(loadRule.startsWith("/"))) {
+                loadRule = PathUtil.fileSepForOS(launcher.isUnix()) + loadRule;
             }
+            newConfigSpec += "load " + loadRule.trim() + "\n";
+        }
+        try {
+            cleartool.setcs(viewName, PathUtil.convertPathForOS(newConfigSpec, launcher));
+        } catch (IOException e) {
+            launcher.getListener().fatalError(e.toString());
+            return false;
         }
-        return recreate;
+        return true;
     }
-    
 }
