Author: yamakenz
Date: Sun Aug  5 02:25:06 2007
New Revision: 4788

Modified:
   trunk/doc/COMPATIBILITY
   trunk/scm/init.scm
   trunk/scm/uim-module-manager.scm
   trunk/scm/uim-sh.scm
   trunk/uim/plugin.c
   trunk/uim/uim-internal.h
   trunk/uim/uim-module-manager.c
   trunk/uim/uim-scm.c
   trunk/uim/uim-scm.h
   trunk/uim/uim-sh.c
   trunk/uim/uim.c

Log:
* uim/uim-internal.h
  - (uim_scm_init): Remove 1st arg 'verbose_level'
* uim/uim-scm.h
  - (uim_scm_get_verbose_level, uim_scm_set_verbose_level): Removed
* uim/uim-scm.c
  - (uim_scm_get_verbose_level, uim_scm_set_verbose_level): Removed
  - (uim_scm_init):
    * Remove 1st arg 'verbose_level'
    * Remove verbose-level handlings
* uim/uim.c
  - (uim_init): Remove LIBUIM_VERBOSE handling
* scm/init.scm
  - Add LIBUIM_VERBOSE handling

* uim/plugin.c
  - (verbose_level): New static function
  - (DPRINTFN): Follow the removal of uim_scm_get_verbose_level()

* uim/uim-sh.c
  - (uim_sh): Remove verbose-level handlings
* scm/uim-sh.scm
  - Add verbose-level handling

* uim/uim-module-manager.c
  - (main): Remove verbose-level handling
* scm/uim-module-manager.scm
  - Add verbose-level handling

* doc/COMPATIBILITY
  - Update


Modified: trunk/doc/COMPATIBILITY
==============================================================================
--- trunk/doc/COMPATIBILITY     (original)
+++ trunk/doc/COMPATIBILITY     Sun Aug  5 02:25:06 2007
@@ -174,8 +174,8 @@
 Affects: IM developers, Bridge developers
 Updates: C API
 Version: 1.5.0
-Revision: ac4519, ac4520
-Date: 2007-03-26
+Revision: ac4519, ac4520, ac4788
+Date: 2007-03-26, 2007-08-05
 Modifier: YamaKen
 Related: uim-scm API reorganization in uim 1.5.0
 URL:
@@ -186,8 +186,11 @@
   (changed) uim_scm_symbol_value_int()
   (changed) uim_scm_symbol_value_str()
   (changed) uim_scm_symbol_value_bool()
+  (removed) uim_scm_get_verbose_level()
+  (removed) uim_scm_set_verbose_level()
 Description:
-  The arguments now requires that non-NULL string.
+  The arguments now requires non-NULL string. If you want to access
+  the verbose-level, use uim_scm_callf() instead.
 ------------------------------------------------------------------------------
 Summary: Change return type of uim_set_candidate_selector_cb() to void
 Affects: Bridge developers

Modified: trunk/scm/init.scm
==============================================================================
--- trunk/scm/init.scm  (original)
+++ trunk/scm/init.scm  Sun Aug  5 02:25:06 2007
@@ -43,6 +43,12 @@
 (undefine bit-xor)
 (undefine bit-not)
 
+(let ((vlevel (getenv "LIBUIM_VERBOSE")))
+  (if (and vlevel
+          (not (setugid?)))
+      (guard (err (else #f))
+       (verbose (string->number vlevel)))))
+
 (define enable-action? #t)
 
 ;; SIOD compatibility for SigScheme

Modified: trunk/scm/uim-module-manager.scm
==============================================================================
--- trunk/scm/uim-module-manager.scm    (original)
+++ trunk/scm/uim-module-manager.scm    Sun Aug  5 02:25:06 2007
@@ -169,3 +169,4 @@
 
 
 (prealloc-heaps-for-heavy-job)
+(verbose 1)

Modified: trunk/scm/uim-sh.scm
==============================================================================
--- trunk/scm/uim-sh.scm        (original)
+++ trunk/scm/uim-sh.scm        Sun Aug  5 02:25:06 2007
@@ -117,3 +117,7 @@
                        (uim-sh-loop))
                      #f)))))
     #t))
+
+;; Verbose level must be greater than or equal to 1 to print anything.
+(if (< (verbose) 1)
+    (verbose 1))

Modified: trunk/uim/plugin.c
==============================================================================
--- trunk/uim/plugin.c  (original)
+++ trunk/uim/plugin.c  Sun Aug  5 02:25:06 2007
@@ -67,14 +67,24 @@
 #define UIM_VLEVEL_PLUGIN 3
 
 #ifdef DEBUG
-#define DPRINTFN(n,x)  if ((n) <= uim_scm_get_verbose_level()) fprintf x;
+#define DPRINTFN(n,x)  if ((n) <= verbose_level()) fprintf x;
 #else
 #define DPRINTFN(n,x)
 #endif
 
+static int get_verbose_level(void);
 static void *plugin_unload_internal(void *uim_lisp_name);
 static void *uim_quit_plugin_internal(void *dummy);
 
+
+static long 
+verbose_level(void)
+{
+  uim_lisp vlevel;
+
+  vlevel = uim_scm_callf("verbose", "");
+  return uim_scm_c_int(vlevel);
+}
 
 static uim_lisp 
 plugin_load(uim_lisp _name)

Modified: trunk/uim/uim-internal.h
==============================================================================
--- trunk/uim/uim-internal.h    (original)
+++ trunk/uim/uim-internal.h    Sun Aug  5 02:25:06 2007
@@ -107,7 +107,7 @@
 };
 
 
-void uim_scm_init(const char *verbose_level, const char *system_load_path);
+void uim_scm_init(const char *system_load_path);
 void uim_scm_quit(void);
 
 void uim_init_plugin(void);

Modified: trunk/uim/uim-module-manager.c
==============================================================================
--- trunk/uim/uim-module-manager.c      (original)
+++ trunk/uim/uim-module-manager.c      Sun Aug  5 02:25:06 2007
@@ -177,7 +177,6 @@
   setenv("LIBUIM_VANILLA", "1", 1);
   
   uim_init();
-  uim_scm_set_verbose_level(1);
 
   args.argc = argc;
   args.argv = argv;

Modified: trunk/uim/uim-scm.c
==============================================================================
--- trunk/uim/uim-scm.c (original)
+++ trunk/uim/uim-scm.c Sun Aug  5 02:25:06 2007
@@ -419,22 +419,6 @@
   return (initialized && !sscm_is_exit_with_fatal_error);
 }
 
-long
-uim_scm_get_verbose_level(void)
-{
-  assert(uim_scm_gc_any_contextp());
-
-  return (long)scm_get_verbose_level();
-}
-
-void
-uim_scm_set_verbose_level(long new_value)
-{
-  assert(uim_scm_gc_any_contextp());
-
-  scm_set_verbose_level(new_value);
-}
-
 void
 uim_scm_set_lib_path(const char *path)
 {
@@ -1037,10 +1021,9 @@
 }
 
 void
-uim_scm_init(const char *verbose_level, const char *system_load_path)
+uim_scm_init(const char *system_load_path)
 {
   ScmStorageConf storage_conf;
-  long vlevel = 2;
   ScmObj output_port;
   char **argp, *argv[8];
 
@@ -1050,10 +1033,6 @@
   if (!uim_output)
     uim_output = stderr;
 
-  if (verbose_level && isdigit((unsigned char)verbose_level[0])) {
-    vlevel = atoi(verbose_level) % 10;
-  }
-
   argp = argv;
   *argp++ = "dummy";  /* command name */
 #if SCM_USE_MULTIBYTE_CHAR
@@ -1098,8 +1077,6 @@
 #endif
 
   scm_require_module("srfi-34");
-
-  uim_scm_set_verbose_level(vlevel);
 }
 
 void

Modified: trunk/uim/uim-scm.h
==============================================================================
--- trunk/uim/uim-scm.h (original)
+++ trunk/uim/uim-scm.h Sun Aug  5 02:25:06 2007
@@ -88,10 +88,6 @@
 uim_bool uim_scm_is_initialized(void);
 uim_bool
 uim_scm_is_alive(void);
-long
-uim_scm_get_verbose_level(void);
-void
-uim_scm_set_verbose_level(long new_value);
 void
 uim_scm_set_lib_path(const char *path);
 

Modified: trunk/uim/uim-sh.c
==============================================================================
--- trunk/uim/uim-sh.c  (original)
+++ trunk/uim/uim-sh.c  Sun Aug  5 02:25:06 2007
@@ -80,16 +80,12 @@
 static void *
 uim_sh(struct uim_sh_args *c_args)
 {
-  long verbose;
   uim_lisp args;
 
 #ifdef LIBEDIT
   editline_init();
 #endif
 
-  verbose = uim_scm_get_verbose_level();
-  uim_scm_set_verbose_level(1);
-  uim_scm_require_file("uim-sh.scm");
 #ifdef UIM_SH_USE_EXIT_HOOK
   /*
      is not working even if uim_siod_fatal is accessible. outermost
@@ -98,13 +94,6 @@
   if (uim_siod_fatal)
     return (void *)EXIT_FAILURE;
 #endif
-
-  /*
-    verbose level must be greater than or equal to 1 to print anything
-  */
-  if (verbose < 1)
-    verbose = 1;
-  uim_scm_set_verbose_level(verbose);
 
   args = uim_scm_c_strs_into_list(c_args->argc,
                                  (const char *const *)c_args->argv);

Modified: trunk/uim/uim.c
==============================================================================
--- trunk/uim/uim.c     (original)
+++ trunk/uim/uim.c     Sun Aug  5 02:25:06 2007
@@ -74,14 +74,13 @@
 int
 uim_init(void)
 {
-  char *verbose, *sys_load_path;
+  char *sys_load_path;
 
   if (uim_initialized)
     return OK;
 
-  verbose = getenv("LIBUIM_VERBOSE");
   sys_load_path = (uim_issetugid()) ? NULL : getenv("LIBUIM_SYSTEM_SCM_FILES");
-  uim_scm_init(verbose, sys_load_path);
+  uim_scm_init(sys_load_path);
 
   return 
(int)uim_scm_call_with_gc_ready_stack((uim_gc_gate_func_ptr)uim_init_internal, 
NULL);
 }

Reply via email to