hunk.code_window: 	delete(tasks, name)
   }
   func getTaskByName(name string) *ScheduledTask {
   	return tasks[name]
   }
   func GetAllTasks() *map[string]*ScheduledTask {
   	return &tasks
  
hunk.labels: keep keep keep replace replace keep keep keep keep
hunk.after_edit: func GetTaskByName(name string) *ScheduledTask {
   	if task, ok := tasks[name]; ok {
   		return task
   	}
   	return nil
  
hunk.file_path: model/job.go
hunk.type: replace
file: // Copyright 2012 The Go Authors. All rights reserved.
  // Use of this source code is governed by a BSD-style
  // license that can be found in the LICENSE file.
  
  // +build windows
  
  // func servicemain(argc uint32, argv **uint16)
  TEXT ·servicemain(SB),7,$0
  	MOVL	argc+0(FP), AX
  	MOVL	AX, ·sArgc(SB)
  	MOVL	argv+4(FP), AX
  	MOVL	AX, ·sArgv(SB)
  
  	PUSHL	BP
  	PUSHL	BX
  	PUSHL	SI
  	PUSHL	DI
  
  	SUBL	$12, SP
  
  	MOVL	·sName(SB), AX
  	MOVL	AX, (SP)
  	MOVL	$·servicectlhandler(SB), AX
  	MOVL	AX, 4(SP)
  	MOVL	·cRegisterServiceCtrlHandlerW(SB), AX
  	MOVL	SP, BP
  	CALL	AX
  	MOVL	BP, SP
  	CMPL	AX, $0
  	JE	exit
  	MOVL	AX, ·ssHandle(SB)
  
  	MOVL	·goWaitsH(SB), AX
  	MOVL	AX, (SP)
  	MOVL	·cSetEvent(SB), AX
  	MOVL	SP, BP
  	CALL	AX
  	MOVL	BP, SP
  
  	MOVL	·cWaitsH(SB), AX
  	MOVL	AX, (SP)
  	MOVL	$-1, AX
  	MOVL	AX, 4(SP)
  	MOVL	·cWaitForSingleObject(SB), AX
  	MOVL	SP, BP
  	CALL	AX
  	MOVL	BP, SP
  
  exit:
  	ADDL	$12, SP
  
  	POPL	DI
  	POPL	SI
  	POPL	BX
  	POPL	BP
  
  	MOVL	0(SP), CX
  	ADDL	$12, SP
  	JMP	CX
  
  // I do not know why, but this seems to be the only way to call
  // ctlHandlerProc on Windows 7.
  
  // func servicectlhandler(ctl uint32) uintptr
  TEXT ·servicectlhandler(SB),7,$0
  	MOVL	·ctlHandlerProc(SB), CX
  	JMP	CX
  