diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2017-09-13 22:41:49 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2017-09-13 22:41:49 -0700 |
commit | b7abfd88f38b75209db441cd5c0b8784774c063f (patch) | |
tree | b7ad7ef49394b297ffb4d99055ef5c152f675195 | |
parent | 8f4549ec0fdb70f57436801c0685c273685df8d0 (diff) | |
download | mu-b7abfd88f38b75209db441cd5c0b8784774c063f.tar.gz |
3997
Follow-up to commit 3993: deep-copy needs to also ignore screen and console objects. Basically channels and any fake objects passed into tests. (The real ones will be null, which will work fine thanks to the bugfix of commit 3996.)
-rw-r--r-- | 071deep_copy.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/071deep_copy.cc b/071deep_copy.cc index a19ca99f..96f2671c 100644 --- a/071deep_copy.cc +++ b/071deep_copy.cc @@ -244,7 +244,7 @@ vector<double> deep_copy(reagent/*copy*/ in, map<int, int>& addresses_copied, co if (is_mu_address(in)) { // hack: skip primitive containers that do their own locking; they're designed to be shared between routines type_tree* payload = in.type->right; - if (payload->left->name == "channel" || payload->left->name == "resources") + if (payload->left->name == "channel" || payload->left->name == "screen" || payload->left->name == "console" || payload->left->name == "resources") return read_memory(in); } vector<double> result; @@ -299,7 +299,7 @@ void deep_copy(const reagent& canonized_in, map<int, int>& addresses_copied, con // hack: skip primitive containers that do their own locking; they're designed to be shared between routines if (!info->payload_type->atom && info->payload_type->left->name == "channel") continue; - if (info->payload_type->atom && info->payload_type->name == "resources") + if (info->payload_type->name == "screen" || info->payload_type->name == "console" || info->payload_type->name == "resources") continue; // construct a fake reagent that reads directly from the appropriate // field of the container |