mmtestenv/mmtesttools/Scripts/secdisp_ini_append.pl
author hgs
Thu, 07 Oct 2010 22:34:12 +0100
changeset 0 b8ed18f6c07b
permissions -rw-r--r--
2010wk40
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     1
#!perl
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     2
# Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     3
# All rights reserved.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     4
# This component and the accompanying materials are made available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     5
# under the terms of "Eclipse Public License v1.0"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     6
# which accompanies this distribution, and is available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     7
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     8
#
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     9
# Initial Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    10
# Nokia Corporation - initial contribution.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    11
#
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    12
# Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    13
#
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    14
# Description:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    15
#
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    16
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    17
use strict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    18
use FindBin;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    19
use File::Copy;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    20
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    21
# Figure out what user has asked us to do...
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    22
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    23
my( $script_name ) = $0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    24
my( $mode ) = $ARGV[0];
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    25
my( $backup ) = $ARGV[1];
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    26
my( $epocextra ) = $ARGV[2];
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    27
my( $wsiniextra ) = $ARGV[3];
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    28
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    29
my( $usage ) = <<EOF;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    30
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    31
This script will append or remove extra options to the epoc.ini and
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    32
wsini.ini emulator configuration files. 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    33
It is intended to be used before and after any emulator tests
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    34
that require multiple emulator screens.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    35
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    36
Usage:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    37
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    38
$script_name help
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    39
	Displays this message.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    40
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    41
$script_name append $backup $epocextra $wsiniextra
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    42
	Makes back-up copies of the epoc.ini and wsini.ini config files to files 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    43
	prefixed with $backup and then appends the contents of $epocextra and 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    44
	$wsiniextra to the originals. Note that $backup must be unique or append 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    45
	will fail.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    46
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    47
$script_name restore $backup
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    48
	Moves the back-up copies of epoc.ini and wsini.ini to their original
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    49
	locations from files prefixed with $backup
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    50
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    51
Notes:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    52
	The wsini.ini file is a unicode text file encoded using UTF-16. The
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    53
	wsini.extra file MUST therefore be saved with the same encoding
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    54
	otherwise the resulting concatenated file will not work. (You don't need
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    55
	to worry about the extra BOM at the start of wsini.extra since this
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    56
	script takes care of removing it before appending the file)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    57
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    58
	The original epoc.ini and wsini.ini files are NOT checked prior to the
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    59
	appending. If you have customised these files (especially with any
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    60
	multi-screen options) the resulting concatenated files may be invalid
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    61
	or cause the tests to fail.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    62
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    63
EOF
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    64
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    65
if( ($mode eq 'help') || ( $mode eq '' ) ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    66
	print $usage;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    67
	exit;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    68
}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    69
elsif( ($mode ne 'append') && ($mode ne 'restore') ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    70
	die "$script_name: ERROR: Invalid argument: \"$mode\". Must be either \"help\", \"append\" or \"restore\"\n".$usage;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    71
}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    72
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    73
##########################################
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    74
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    75
# Append $source to $dest. If $is_utf_16 the BOM marker at the start of $source will be
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    76
# stripped off to ensure that the $dest remains a valid UTF-16 file.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    77
sub append_to_file{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    78
	my( $source, $dest, $is_utf_16 ) = @_;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    79
	my( $line, $did_first );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    80
	$did_first = 0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    81
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    82
	open SOURCE, $source or die "$script_name: ERROR: Could not open $source ($!)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    83
	open DEST, '>>', $dest or die "$script_name: ERROR: Could not open $dest ($!)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    84
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    85
	if( $is_utf_16 ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    86
		# since our old version of Perl does not have decent Unicode support
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    87
		# we'll use binary mode instead...
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    88
		binmode SOURCE;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    89
		binmode DEST;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    90
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    91
		while( read( SOURCE, $line, 1000 ) ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    92
			if( !$did_first ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    93
				# strip BOM (first two bytes) off first line, since it is being appended to an
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    94
				# existing UTF-16 file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    95
				$line = substr( $line, 2 );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    96
				$did_first = 1;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    97
			}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    98
			print DEST $line;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    99
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   100
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   101
	else{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   102
		# bog-standard ASCII
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   103
		while( $line = <SOURCE> ){		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   104
			print DEST $line;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   105
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   106
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   107
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   108
	close SOURCE;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   109
	close DEST;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   110
}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   111
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   112
##########################################
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   113
# Begin main logic...
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   114
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   115
# Figure out locations of INI files...
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   116
my( $epoc_root, $epocini, $udeb_wsini, $urel_wsini, $extra_epocini, $extra_wsini, $copy_epocini, $copy_udeb_wsini, $copy_urel_wsini );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   117
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   118
$epoc_root = $ENV{'EPOCROOT'};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   119
$epoc_root =~ tr:\\:/:; # change to Linux-friendly forward-slashes (Windows Perl compensates for this automagically)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   120
$epoc_root =~ s/\/$//; # remove any trailing slash to avoid double slashes when the paths are appended below
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   121
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   122
$epocini = $epoc_root.'/epoc32/data/epoc.ini';
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   123
#if this is defined we are running Mistral
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   124
if($ENV{'EPOC_INI'}) {$epocini = $ENV{'EPOC_INI'};}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   125
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   126
$udeb_wsini = $epoc_root.'/epoc32/RELEASE/WINSCW/UDEB/Z/system/data/wsini.ini'; # this file is UTF-16 little-endian!
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   127
$urel_wsini = $epoc_root.'/epoc32/RELEASE/WINSCW/UREL/Z/system/data/wsini.ini'; # this file is UTF-16 little-endian!
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   128
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   129
my $emu_data_dir = $ENV{'EMULATOR_DATA_DIR'};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   130
if($emu_data_dir) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   131
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   132
	#this is mistral so we will overload $urel_wsini with absolute location
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   133
	$urel_wsini = $emu_data_dir.'z\system\data\wsini.ini';
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   134
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   135
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   136
$extra_epocini = $FindBin::Bin.$epocextra; # this file is ASCII
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   137
$extra_wsini = $FindBin::Bin.$wsiniextra; # this file is UTF-16 little-endian!
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   138
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   139
$copy_epocini = $FindBin::Bin.'/'.$backup.'_epoc.copy';
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   140
$copy_udeb_wsini = $FindBin::Bin.'/'.$backup.'_wsini_udeb.copy';
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   141
$copy_urel_wsini = $FindBin::Bin.'/'.$backup.'_wsini_urel.copy';
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   142
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   143
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   144
if( $mode eq 'append' ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   145
	# Append mode: Append extra options to existing INI files
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   146
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   147
	# first make back-up of existing INI files
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   148
	# (without clobbering existing copies)	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   149
	if( -e $copy_epocini ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   150
		die "$script_name: ERROR: Back-up of epoc.ini already exists at \"$copy_epocini\". Please run \"$script_name restore\" first.\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   151
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   152
	else{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   153
		copy( $epocini, $copy_epocini ) or die "$script_name: ERROR: Could not copy $epocini ($!)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   154
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   155
	# now append extra bits to original INI files
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   156
	append_to_file( $extra_epocini, $epocini, 0 );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   157
	print "$script_name: NOTE: Extra settings have been appended to \"$epocini\". If you have customised this file and secondary display tests fail, please check for conflicting settings!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   158
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   159
	## UREL wsini.ini + mistral universal
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   160
	if( -e $copy_urel_wsini ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   161
		die "$script_name: ERROR: Back-up of UREL wsini.ini already exists at \"$copy_urel_wsini\". Please run \"$script_name restore\" first.\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   162
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   163
	else{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   164
		copy( $urel_wsini, $copy_urel_wsini ) or die "$script_name: ERROR: Could not copy $urel_wsini ($!)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   165
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   166
	#note mistral will provide absolute location dependant on running mode	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   167
	append_to_file( $extra_wsini, $urel_wsini, 1 );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   168
	print "$script_name: NOTE: Extra settings have been appended to \"$urel_wsini\". If you have customised this file and secondary display tests fail, please check for conflicting settings!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   169
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   170
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   171
	#unless mistral in which case we dont bother keeping a backup of udeb as we adjust universal copy 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   172
	#under guise of UREL path
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   173
	if(!$emu_data_dir)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   174
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   175
		if( -e $copy_udeb_wsini ){
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   176
			die "$script_name: ERROR: Back-up of UDEB wsini.ini already exists at \"$copy_udeb_wsini\". Please run \"$script_name restore\" first.\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   177
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   178
		else{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   179
			copy( $udeb_wsini, $copy_udeb_wsini ) or die "$script_name: ERROR: Could not copy $udeb_wsini ($!)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   180
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   181
		#
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   182
		append_to_file( $extra_wsini, $udeb_wsini, 1 );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   183
		print "$script_name: NOTE: Extra settings have been appended to \"$udeb_wsini\". If you have customised this file and secondary display tests fail, please check for conflicting settings!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   184
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   185
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   186
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   187
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   188
}else{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   189
	# Restore mode: Move copies of original INI files back to original locations
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   190
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   191
	move( $copy_epocini, $epocini ) && print "$script_name: NOTE: \"$epocini\" has been restored to previous version.\n" or warn "$script_name: Could not restore $epocini from $copy_epocini ($!)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   192
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   193
	move( $copy_urel_wsini, $urel_wsini ) && print "$script_name: NOTE: \"$urel_wsini\" has been restored to previous version.\n" or warn "$script_name: Could not restore $urel_wsini from $copy_urel_wsini ($!)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   194
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   195
	if(!$emu_data_dir)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   196
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   197
		move( $copy_udeb_wsini, $udeb_wsini ) && print "$script_name: NOTE: \"$udeb_wsini\" has been restored to previous version.\n" or warn "$script_name: Could not restore $udeb_wsini from $copy_udeb_wsini ($!)\n";		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   198
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   199
}