From 8fff3315f2299e93aa9513fcbf909db9f5b2c606 Mon Sep 17 00:00:00 2001 From: evazion Date: Sat, 1 Apr 2017 03:30:00 -0500 Subject: [PATCH] fix #2950: don't send versions to archives if save fails. --- app/models/pool.rb | 2 +- app/models/post.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/models/pool.rb b/app/models/pool.rb index c99c2d81a..37932262d 100644 --- a/app/models/pool.rb +++ b/app/models/pool.rb @@ -17,9 +17,9 @@ class Pool < ActiveRecord::Base before_validation :initialize_creator, :on => :create before_validation :strip_name after_save :update_category_pseudo_tags_for_posts_async - after_save :create_version after_create :synchronize! before_destroy :create_mod_action_for_destroy + after_commit :create_version, :on => [:create, :update] attr_accessible :name, :description, :post_ids, :post_id_array, :post_count, :is_active, :category, :as => [:member, :gold, :platinum, :janitor, :moderator, :admin, :default] attr_accessible :is_deleted, :as => [:moderator, :admin] diff --git a/app/models/post.rb b/app/models/post.rb index df2ad0589..01ff77653 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -23,13 +23,13 @@ class Post < ActiveRecord::Base before_save :set_tag_counts before_save :set_pool_category_pseudo_tags before_create :autoban - after_save :create_version after_save :update_parent_on_save after_save :apply_post_metatags after_save :expire_essential_tag_string_cache after_destroy :remove_iqdb_async after_destroy :delete_files after_destroy :delete_remote_files + after_commit :create_version, :on => [:create, :update] after_commit :update_iqdb_async, :on => :create after_commit :notify_pubsub @@ -1414,7 +1414,7 @@ class Post < ActiveRecord::Base module VersionMethods def create_version(force = false) - if new_record? || rating_changed? || source_changed? || parent_id_changed? || tag_string_changed? || force + if force || new_record? || previous_changes.key?("rating") || previous_changes.key?("source") || previous_changes.key?("parent_id") || previous_changes.key?("tag_string") create_new_version end end