Changeset 3984


Ignore:
Timestamp:
Mar 16, 2017, 1:29:28 PM (3 years ago)
Author:
daduve
Message:

Fix bug: Executables with equal name but not equal md5

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/ExecBox.py

    r3918 r3984  
    122122                        fcb.destroy()
    123123                        pkg=os.path.basename(exec_url)
    124                         #Compruebo si es un paquete nuevo de la lista
    125                         if pkg not in self.core.current_var["sh"]["packages"]:
    126                                 lines=subprocess.Popen(["LAGUAGE=en_EN; md5sum %s | awk '{print $1}'"%exec_url],shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE).communicate()[0]
    127                                 for line in lines.splitlines():
    128                                         md5=line
    129                                 self.core.current_var["sh"]["packages"].append([pkg,md5])
     124                        lines=subprocess.Popen(["LAGUAGE=en_EN; md5sum %s | awk '{print $1}'"%exec_url],shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE).communicate()[0]
     125                        for line in lines.splitlines():
     126                                md5=line
     127                        pkg_tupla=[pkg,md5]
     128                        #Compruebo si existe el paquete en la lista
     129                        if any(pkg in element for element in self.core.current_var["sh"]["packages"]):
     130                                #No es nuevo, compruebo si coincide su md5sum y lo apunto a subir de nuevo
     131                                if pkg_tupla not in self.core.current_var["sh"]["packages"]:
     132                                        #he de eliminar la tupla de la lista que contiene mi elemento con mismo pkg pero con nuevo md5sum
     133                                        for i,[pkg_for,md5_for] in enumerate(self.core.current_var["sh"]["packages"]):
     134                                                if pkg == pkg_for:
     135                                                        self.core.current_var["sh"]["packages"].pop(i)
     136                                        #self.core.current_var["sh"]["packages"].remove(pkg_tupla)
     137                                        self.core.current_var["sh"]["packages"].append(pkg_tupla)
     138                                        self.new_execs.append([pkg,exec_url])
     139                                        self.list_new_execs.append(pkg)
     140                        else:
     141                                self.core.current_var["sh"]["packages"].pop(pkg_tupla)
    130142                                self.new_package_button(pkg)
    131143                                #print "paquete nuevo en lista, esta subido??"
Note: See TracChangeset for help on using the changeset viewer.