From 64658bb975b6fd9ca5df403e0e810219df97dbfd Mon Sep 17 00:00:00 2001 From: Jason Etheridge Date: Thu, 20 Sep 2012 13:10:15 -0400 Subject: [PATCH] LP1053526 - Don't inadvertently modify the in-memory org tree when printing To see an example of this causing a problem, load Holdings Maintenance for an arbitrary bib record with items. Make sure the Hide Empty Libs checkbox is checked. Hit the Print button at the bottom of the UI (it's okay to then Cancel the print). Then hit Refresh. It should result in an org.children() is null error. Signed-off-by: Jason Etheridge Signed-off-by: Ben Shum --- Open-ILS/xul/staff_client/chrome/content/util/list.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Open-ILS/xul/staff_client/chrome/content/util/list.js b/Open-ILS/xul/staff_client/chrome/content/util/list.js index d6057e399f..4adb8798ad 100644 --- a/Open-ILS/xul/staff_client/chrome/content/util/list.js +++ b/Open-ILS/xul/staff_client/chrome/content/util/list.js @@ -1576,8 +1576,8 @@ util.list.prototype = { params.staff = data.list.au[0]; } if (!params.lib && data.list.au && data.list.au[0] && data.list.au[0].ws_ou() && data.hash.aou && data.hash.aou[ data.list.au[0].ws_ou() ]) { - params.lib = data.hash.aou[ data.list.au[0].ws_ou() ]; - params.lib.children(null); + params.lib = JSON2js( js2JSON( data.hash.aou[ data.list.au[0].ws_ou() ] ) ); // clone this sucker + params.lib.children(null); // since we're modifying it } if (params.template && data.print_list_templates[ params.template ]) { var template = data.print_list_templates[ params.template ]; -- 2.11.0