summaryrefslogtreecommitdiff
path: root/package/busybox/patches/521-ipkg_upgrade_env.patch
blob: 593b8c41fdcd0d913220673cc8478815e52b8778 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
--- a/archival/libipkg/ipkg_install.c
+++ b/archival/libipkg/ipkg_install.c
@@ -136,6 +136,7 @@
 ipkg_error_t ipkg_install_by_name(ipkg_conf_t *conf, const char *pkg_name)
 {
      int cmp;
+     int u = 0;
      pkg_t *old, *new;
      char *old_version, *new_version;
 
@@ -201,6 +202,7 @@
 	  } else if (cmp < 0) {
 	       new->dest = old->dest;
 	       old->state_want = SW_DEINSTALL;    /* Here probably the problem for bug 1277 */
+           u = 1;
 	  }
      }
 
@@ -211,7 +213,7 @@
 	anyone ever wants to make a nice libipkg. */
 
      ipkg_message(conf, IPKG_DEBUG2,"Function: %s calling ipkg_install_pkg \n",__FUNCTION__);
-     return ipkg_install_pkg(conf, new,0);
+     return ipkg_install_pkg(conf, new,u);
 }
 
 ipkg_error_t ipkg_install_multi_by_name(ipkg_conf_t *conf, const char *pkg_name)
@@ -750,8 +752,10 @@
      char* file_md5;
 
     
-     if ( from_upgrade ) 
+     if ( from_upgrade ) {
         message = 1;            /* Coming from an upgrade, and should change the output message */
+        setenv("IPKG_UPGRADE", "yes", 1);
+     }
 
      if (!pkg) {
 	  ipkg_message(conf, IPKG_ERROR,